Method of resolving a location from data representative thereof

ABSTRACT

The invention provides a method of resolving a location in a second digital map from an ordered list of location reference points determined from a first digital map. The method involves identifying candidate lines and nodes in the second digital map, and using curvature, height and gradient information associated with the location reference points to identify the most likely candidate nodes or lines in the second digital map corresponding to the nodes represented by the location reference points and to lines emanating from or incident at the node in the first digital map. The method involves carrying out a route search between the most likely identified candidate node or line identified for one location reference point, and the corresponding node or line associated with the next reference point in the list, and repeating this step for consecutive pairs of reference points until the final location reference point is reached.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is the National Stage of International Application No.PCT/US2011/031488, filed Apr. 7, 2011 and designating the United States.The application claims the benefit of U.S. Provisional Application No.61/342,068 filed Apr. 9, 2010. The entire contents of both theseapplications are incorporated herein by reference.

FIELD OF THE INVENTION

The present invention is concerned with an improved method of resolvinga location represented by data encoded according to one or morepredetermined formats, and more specifically is concerned with animproved method for accurately determining a location within a digitalmap, such as those created and sold by Tele Atlas B.V. and Navteq Inc.,in a manner which is not dependent on the particular digital map usedduring a decoding process and yet is identical to the originally encodedlocation.

Although the term “location” in the context of digital mapping can meanany of a variety of different physical, real-world features (e.g. apoint location on the surface of the earth, a continuous path or route,or a contiguous chain of such, of navigable thoroughfares existing onearth, or an area or region on earth capable, in the case of arectangular, square or circular area, of being defined by two or moreparameters), this invention is most applicable to an encoded datarepresentation of a path through a network of roads or other navigablethoroughfares represented in a digital map.

BACKGROUND TO THE INVENTION

Any modern digital map (or mathematical graph, as they are sometimesknown) of a road network, in its simplest form, is effectively adatabase consisting of a plurality of tables defining firstly nodes(which can be considered as points or zero-dimensional objects) mostcommonly representative of road intersections, and secondly linesbetween those nodes representing the roads between those intersections.In more detailed digital maps, lines may be divided into segmentsdefined by a start node and end node, which may be the same in the caseof a segment of zero length, but are more commonly separate. Nodes maybe considered real or “valid” for the purposes of this application whenthey represent a road intersection at which a minimum of 3 lines orsegments intersect, whereas “artificial” or “avoidable” nodes are thosewhich are provided as anchors for segments not being defined at one orboth ends by a real node. These artificial nodes are useful in digitalmaps to provide, among other things, shape information for a particularstretch of road or a means of identifying the position along a road atwhich some characteristic of that road changes, e.g. a speed limit.

In practically all modern digital maps, nodes and segments (and/orlines) are further defined by various properties or attributes which areagain represented by data in the tables of the database. Each node willtypically have latitude and longitude coordinates to define itsreal-world position. The complete “graph” of the road network isdescribed by millions of nodes and segments to cover an area of spanningone or more countries, or part thereof.

In the context of devising a means of efficiently referencing ordescribing a location (i.e. a path through a road network), it is notonly highly inefficient simply to provide an ordered list of all nodes(and/or segments, and optionally their attributes) within the digitalmap which form part of the location, but such a referencing method wouldnecessitate that exactly the same digital map was used during anyde-referencing which later occurred, for example in a mobile device towhich the location reference was transmitted, because nodes, segments,lines and their attributes are practically only ever uniquely defined ina particular version of a map created by a particular map vendor. Evenfundamental attributes such as longitude and latitude for a particularnode might differ between different digital maps.

One particular attribute often provided in digital maps is a TrafficMessage Channel (TMC) location table reference. TMC is a technology fordelivering traffic and travel information to vehicle users, and moreparticularly to navigation systems (either portable or integrated)present within those vehicles and which include some form of digitalmap. A TMC message consists of an event code (which need not betraffic-specific, although these are most common) and a location code,often consisting of an ordered list of location references by means ofwhich the location of the traffic event can be determined in the digitalmap and thus represented graphically on the screen of the navigationsystem. A number of pre-defined nodes in most commercially availabledigital maps are assigned a TMC location reference which is determinedwith reference to a limited location table. The location table consistsof 2¹⁶ (65536) location references corresponding to a similar number ofphysical or real world locations, usually road intersections, alsoidentifiable in the digital map.

Although TMC messages are very efficient in that they can be as short as37 bits in length and therefore do not impinge significantly onavailable bandwidth for broadcast data, only a fixed number of locationreferences are available, and therefore typically only motorways andmajor highways (or intersections thereon) in each country offering TMCcan be referenced. There are various other disadvantages of TMC locationreferences. For instance, TMC location tables are

-   -   often maintained through a public authority or National        Government,    -   prone to change between update cycles, which are traditionally        quite long,    -   non-existent, or available only commercially, in some markets.

Of course, decoding a TMC location reference is intrinsically simple inthat a simple queries can be performed in the digital map database foreach TMC location code resulting in immediate identification of therelevant correct nodes and segments (each map provider will include TMClocation codes as part of the map production process ensuringprecision), and thus the location can be immediately resolved. However,as it is becoming possible to identify traffic build up on secondary andurban roads using GSM and GPS probe data (e.g. vehicles usersincreasingly possess either a mobile phone or a connected satellitenavigation devices useful as probes), TMC location codes are simplyinadequate as far resolution is concerned.

One attempt to overcome some of the limitations of TMC locationreferences or map-specific references is the Dynamic LocationReferencing project, also known as AGORA-C (in the process ofstandardization under no. ISO 17572-1, 2, and 3). Although a completedescription of the AGORA-C location referencing approach is beyond thescope of this application, the fundamentals of the approach are that alocation reference can be completely specified by a set of locationpoints, specified by coordinate pairs of latitude and longitude andordered in a list, each point complying with various rules but mostimportantly being consecutive in terms of the location being referencedand the previous point in the list, i.e. successive points form anext-point-relationship. As with other location referencing systems,each point is provided with a number of attributes which assist inbetter defining that point, but specific to the AGORA-C method is theidentification of each point as one of a location point, an intersectionpoint, a routing point, or some combination of these three. Each pointalong the location at which the road section signature changes isrepresented by an intersection point, so locations being paths over aroad network and which pass through intersections without any roadsection signature change need not be referenced by an intersectionpoint. For example, if a location includes a section of motorway whichincludes junctions that are not relevant as far as the location isconcerned, then there is no need to include intersection points for suchjunctions. One of the earlier steps in the AGORA-C encoding method isthe determination of all intervening intersection points between a firstand a last intersection point along the location at which a change ofroad section signature occurs.

All these points are added to a table of points ultimately forming partof the AGORA-C location reference. Within this table, at least tworouting points will also have been identified, again according tocertain rules. Routing points are provided where an intersection pointsalone are insufficient to unambiguously determine the correct locationin the decoder, and are either added as separate points, or where arequired routing point coincides with existing intersection point, asimple attribute change on the latter is effected.

Although this referencing approach is comprehensive in that it ispossible to accurately and repeatably encode and decode any locationexisting within a geographical information system, it is believed thatthat the system is excessive and possibly redundant in certain aspects,and a more efficient encoding and decoding system is possible. Forinstance, although the referencing method is independent of anypre-compilation work and is map-independent, the average AGORA-C messagesize is significantly higher than 30 bytes per location reference. Interms of the devices which might commonly decode location references,such as personal navigation devices, PDAs, mobiles, or in-car integratednavigation systems, it is desirable that the received message be asshort as possible to enable rapid decoding and ultimate resolution ofthe location represented thereby.

In the Applicant's application WO 2010/000707 A1 filed on 29 Jun. 2009entitled “An Efficient Location Referencing Method”, the contents ofwhich are hereby incorporated by reference, a technique is described forproducing a machine-readable representation of a location in a mannerwhich not only is considered optimised as far as overall byte length isconcerned, but which is also considered as being map-agnostic.

In another application filed by the Applicant on 29 Jun. 2009 entitled“A Method of Resolving a Location from Encoded Data Representativethereof”, and published as WO 2010/000706 A1, a method of resolving alocation is described. The contents of WO '706 is hereby incorporated byreference. The location is represented by structured data, typically apacket of binary data resulting from the encoding of an ordered list oflocation reference points representative of that location according to aphysical data format specification using techniques described in WO'707. The method described is advantageous in being both economical interms of required processing, and also achieving high success rates interms of re-creating the correct location despite the relative brevityof received data regardless of the digital map used. In this regard, themethod can be considered as map-agnostic, but the manner in which thedecoding occurs, as opposed to the resolving of decoded data into alocation, will inevitably be dependent on the predetermined formatchosen.

While the encoding and decoding techniques described in WO '707 and WO'706 may solve many of the problems described above with previouslyknown techniques, and have been found to facilitate resolution oflocations in a second digital map using data describing the locationswhich has been encoded from a first digital map, the Applicant hasrealised that there remains scope for further refinement and improvementof these methods in relation to identifying the location in the seconddigital map when more than one possibility exists for a node and/or lineor segment forming part of the location in the second digital map.

In accordance with the techniques described in WO '706, an ordered listof location reference points is used to resolve a location. The orderedlist of reference points are representative of nodes in a first digitalmap, and are associated with information or attributes representative ofproperties of at least one specific line or segment in the first digitalmap emanating from or incident at the node. In accordance with themethods of WO '706, at least one candidate node in a second digital mapis identified for each location reference point. For example, this maybe a node identified as being a reasonable match due to its position. Inaddition at least one candidate line or segment in the second digitalmap emanating from or incident at the candidate node is identified. Aroute search is carried out in the second digital map between candidatenodes or candidate lines or segments for successive location referencepoints and those lines or segments forming part of the route determinedextracted. This is repeated for each pair of consecutive locationreference points.

In some situations more than one candidate node and/or more than onecandidate line or segment in the second digital map may be identifiedfor a given location reference point. The Applicant has realised thatthere remains a need for an improved method of resolving the location inthe second digital map from the ordered list of location referencepoints in such situations.

SUMMARY OF THE INVENTION

In accordance with the present invention there is provided a method ofresolving a location from an ordered list of location reference points,each location reference point being representative of a node in a firstdigital map and each location reference point being associated withinformation relating to the properties of a specific line or segment insaid first digital map emanating from or incident at the node, themethod comprising the steps of:

-   (i) for each location reference point, identifying at least one    candidate node existing in a second digital map, and identifying at    least one candidate line or segment existing in said second digital    map emanating from or incident at said candidate node;-   (ii) performing a route search within said second digital map    between: at least one of an identified candidate node and a    corresponding identified candidate line or segment emanating    therefrom or incident thereat; and at least one of an identified    candidate node for the next location reference point appearing in    the list and a corresponding identified candidate line or segment    emanating therefrom or incident thereat, and extracting from said    second digital map each line or segment forming part of the route so    determined between said candidate nodes; and-   (iii) repeating step (ii) for each consecutive pair of location    reference points up to and including the final location reference    point appearing in the list,-   wherein, when more than one candidate node and/or more than one    candidate line or segment in the second digital map is identified    for a given location reference point, the method further comprises a    step of identifying a most likely candidate node and/or a most    likely candidate line or segment, and using the most likely    candidate node and/or most likely candidate line or segment in the    route search,-   wherein curvature and/or elevation information is associated with    each location reference point, the curvature and/or elevation    information relating to the location reference point and/or the    specific line or segment emanating from or incident at the node in    the first digital map represented by the location reference point,    and-   wherein the method comprises using the elevation and/or curvature    information in said step of identifying the most likely candidate    node and/or most likely candidate line or segment when more than one    candidate node and/or candidate line or segment is found in the    second digital map.

Accordingly, in embodiments of the invention, when more than onecandidate node and/or more than one candidate line or segment emanatingfrom or incident at a given candidate node is identified in the secondmap for a given location reference point, curvature and/or elevationinformation is used to select a most likely candidate node and/orcandidate line or segment for use in the route calculation. In otherwords, curvature or elevation information is used in the step ofdetermining which of the possible candidate nodes or lines or segmentsin the second map is the best match to the node, or line or segmentassociated with the node in the first digital map as represented by thelocation reference point.

A candidate node as defined herein is a node in the second digital mapthat is identified as being a possible match for the node in the firstmap represented by a location reference point. This may be determined onthe basis of the position of the location reference point.

A candidate line or segment as defined herein is a line or segment thatis identified as being a possible match in the second map for thespecific line or segment in the first map emanating from or incident atthe node represented by a location reference point. This may bedetermined using the information associated with the location referencepoint relating to the properties of the specific line or segmentcorresponding to the node represented by the first reference point inthe first digital map.

The use of curvature or elevation information in accordance with thepresent invention has been found to enhance accuracy of matching a nodeor a line or segment in a first digital map to the corresponding node orline or segment in a second digital map, even where the maps are ofdifferent levels of completeness and positional accuracy. Furthermore,the technique has been found to allow locations to be accuratelyresolved between first and second maps even where the maps use differentmodelling specifications for node positioning. In effect, by associatingcurvature or elevation information relating to the nodes represented bythe location reference points or the lines or segments emanating from orincident at the nodes with location reference points, additionalgeospatial dimensions are added to the ordered list of locationreference points to provide greater accuracy and computational benefitswhen resolving the location from the first digital map in anotherdigital map. This opens up the possibility of generating locationreference points from a first digital map based upon raw or semiprocessed probe data for resolution in a second conventional e.g.topologically integrated navigational map.

Curvature or elevation information has been found to be particularlyuseful in disambiguating between otherwise similar nodes orlines/segments.

By way of example, it is possible that more than one node correspondingto a road intersection in a first digital map may be located in the sameor similar position when only two dimensional e.g. longitudinal andlatitudinal position information is considered. However, they may differsignificantly in elevation. This could be the case in a stacked typeintersection, where roads may come together one above the other. Thus,on the basis of geographical proximity to a location reference pointrepresenting one of the nodes in the first map and includinglongitudinal and latitudinal coordinate information only, multiple nodesin the second map may be identified as candidate nodes. By additionallyassociating elevation information with the location reference point, itis possible to distinguish between such candidate nodes, and determinewhich represents the best match to the location reference point andhence the node in the first digital map represented by the locationreference point.

In another example, this time referring to candidate lines or segments,it may be found that more than one candidate line or segment emanatesfrom or is incident at a candidate node in the second map. In caseswhere the angular separation between the lines or segments is slight, itmay not be possible to determine which line or segment is the best fitto the line or segment associated with the node in the first maprepresented by the location reference point using the other attribute orproperty information associated with the location reference point inaccordance with the previously proposed methods of WO 2010/000706 A1,e.g. class or form of road, bearing, road length. However, two otherwisesimilar lines or segments may have different curvature as they enter orleave the node, or may have different change of elevation i.e. gradient.Taking curvature or elevation information into account makes it possibleto determine the line or segment in the second map with the best fit tothe line or segment associated with the node represented by the locationreference point in the first map.

The step of using the curvature and/or elevation information to identifya most likely candidate node and/or line or segment is applicablewhenever multiple candidate nodes or lines/segments are identified. Itis necessary to identify a single candidate node and a singlecorresponding candidate line or segment for use in the route search ofstep ii). Depending upon whether multiple candidate nodes or multiplecandidate lines/segments or both are found, the step may be used toidentify only a most likely candidate node, only a most likely candidateline or segment or both a most likely candidate node and a most likelycandidate line or segment. The way in which the curvature and/orelevation information is used will depend upon how many candidate nodesor lines/segments are identified in the second map. The presentinvention extends to embodiments in which more than one candidate lineor segment is identified for a given location reference point, and/orwherein more than one candidate node is identified for a given locationreference point. The method will then involve using the curvature and/orelevation information to identify a most likely candidate node and/orline or segment for use in the route search.

In embodiments of the invention, when distinguishing between multiplecandidate nodes, elevation information is preferably used. Whendistinguishing between multiple candidate lines or segments curvatureand/or elevation information may be used. In accordance with someembodiments, elevation information and/or curvature information relatingto the specific line or segment emanating from or incident at the noderepresented by the location reference point is associated with eachlocation reference point, and, when more than one candidate line orsegment is identified for a given location reference point, the methodcomprises identifying the most likely candidate line or segment for thelocation reference point using the curvature and/or elevationinformation. Alternatively or additionally, in some embodiments,elevation information relating to the node represented by the referencepoint is associated with each location reference point, and when morethan one candidate node is identified for a given location referencepoint, the method comprises identifying the most likely candidate nodefor the location reference point using the elevation information.

The elevation information in accordance with any of the embodiments ofthe invention may be information regarding any form of elevation e.g.height. The elevation information may be absolute or relative elevationinformation. For example information relating to the elevation of afirst location reference point of the ordered list may be absoluteelevation information. Elevation information associated with successivelocation reference points may be relative elevation information e.g.relative to the elevation of the first or previous location referencepoint. The elevation information may alternatively be informationregarding a change in elevation i.e. gradient. Elevation differenceinformation is particularly applicable when the elevation informationrelates to a line or segment.

In embodiments the elevation information is one or more of absoluteelevation information, relative elevation information or elevationchange e.g. gradient information. In preferred embodiments, whether itrelates to absolute or relative elevation, or a change in elevation, theelevation information is preferably ellipsoidal height information. Inembodiments elevation information relating to a location reference pointis or includes absolute or relative ellipsoidal height information andelevation information relating to a specific line or segment is orincludes information relating to a change in elevation or absolute orrelative elevation. It will be appreciated that elevation informationrelating to a line or segment may also be absolute or relativeellipsoidal height information for the line or segment or the node thatthe line or segment emanates from or is incident at. For example, whendistinguishing between two candidate lines, the height of a nodeassociated with the lines may be used to disambiguate the lines whereinthe lines are associated with different nodes.

Elevation information may be associated with a location reference pointas part of the position information describing the position of thelocation reference point i.e. the position of the node representedthereby. In preferred embodiments each location reference point isassociated with position information defining the position of thelocation reference point. The position information may comprise a set ofcoordinates. Rather than associating a two dimensional set ofcoordinates describing the position of the reference point with thereference point, a three dimensional set of coordinates may be used inaccordance with the invention to provide elevation information.Preferably therefore, each location reference point is associated withinformation defining the position of the location reference point, theposition information including elevation information for the locationreference point. Preferably the location reference point is associatedwith position information in three dimensions. In embodiments thelocation reference point is associated with a set of coordinatesproviding the position information. Preferably the set of coordinatesincludes longitudinal, latitudinal and elevation coordinates.

As described in WO 2010/000706 A1, the step of identifying at least onecandidate node existing in the digital map will typically be done on thebasis of proximity of nodes in the second map to the position of thelocation reference point. Accordingly, in embodiments, the step ofidentifying the at least one candidate node in the second map comprisesusing the position of the location reference point to identify the atleast one candidate node. The method may comprise selecting nodes in thesecond map located within a given threshold distance of the locationreference point as the candidate node or nodes. The position used toidentify the at least one candidate node may be a two dimensionalposition. The threshold distance may be a two dimensional distance. Insome embodiments the at least one candidate node is identified usingonly longitudinal and latitudinal position information.

In accordance with embodiments of the present invention, when multiplecandidate nodes are identified, elevation information associated withthe location reference point is used to identify the most likelycandidate node. Thus the elevation information for the locationreference point may be used to determine which of the candidate nodeshas a position most closely matching that of the location referencepoint. In other words, the position of the location reference point inthe third dimension may be used to identify the most likely candidatenode among the candidate nodes. It will be seen therefore that theelevational information may be used to distinguish amongst multiplecandidate nodes identified on the basis of two dimensional position.

It will be seen therefore that the elevation information for a referencepoint may be associated with the reference point as part of the positioninformation for the reference point. In embodiments, each locationreference point is associated with position information. The positioninformation is indicative of the position of a node in the first maprepresented by the reference point. In accordance with the invention theposition information preferably includes elevation information. Inpreferred embodiments the position information is in the form of a setof coordinates. The coordinates describe the position of the node in atleast two dimensions, and preferably three dimensions. The coordinatesmay include longitudinal, latitudinal and preferably elevationalcoordinates for the node.

The skilled person will recognise that absolute or relative elevationalinformation relating to a location reference point i.e. to the noderepresented thereby may be obtained in a number of ways. For example,the information may be obtained directly or indirectly from a first mapfor association with the location reference point when the ordered listof reference points is created. For example, elevation may already be afeature of the first digital map database, and the relevant elevationaldata may be copied from the map database and associated with thelocation reference point in the same way as other geographicalcoordinates. In other cases, the elevation information may be derived byreference to a linear reference resource of the first map database, suchas a probe trace.

Another option might be to obtain the elevation information by referenceto a digital terrain map (DTM) of the region containing the node.

In preferred embodiments, elevation information associated with a givenreference point and relating to a corresponding line or segmentemanating from or incident at the node represented by the referencepoint is or comprises gradient information. In other words theinformation relates to a slope of the line or segment.

In accordance with the invention, information relating to the propertiesof a specific line or segment emanating from or incident at the node inthe first map represented by the location reference point is associatedwith the reference point. In embodiments each location reference pointis associated with information relating to the properties of only onespecific line or segment emanating therefrom or incident thereat. Inpractice whether or not information for an incoming or outgoing line orsegment is provided will depend upon the position of the reference pointin the ordered list. In some embodiments, for all except the lastlocation reference point, information relating to the properties of anoutgoing line or segment is associated with the reference point. For thelast reference point information about an incoming line or segment isassociated with the reference point.

This information provides the location reference points with attributesindicative of the properties of a specific outgoing or incoming line orsegment. Thus the information may be referred to as an attribute orattributes of the location reference point. The information may be usedto identify the one or more candidate lines or segments associated witha candidate node in the second map. In other words, rather than havingto know detailed position information describing the path of a line orsegment in the first map to try to identify a matching line or segmentin the second map, the invention relies upon using the attributes orinformation associated with the reference point indicative of propertiesof the line or segment incident at or emanating from the noderepresented by the reference point in the first map to identify thecandidate lines or segments in the second map i.e. the possible matchinglines or segments. For example, the property may be a road type, such asroad class. When identifying candidate lines or segments in the secondmap, the system may look for lines or segments associated with acandidate node that are of the same class as the specific line orsegment in the first map. In other words, the properties of the line orsegment in the first map are used as criteria when identifying candidatelines or segments in the second map.

This information associated with the reference point is indicative ofproperties of the specific line or segment other than position. Theseproperties are often referred to as attributes of the lines or segments.Thus the information associated with the reference point may be referredto as information relating to attributes of the specific line orsegment. The attributes or properties may be attributes/properties ofthe line or segment itself and/or indicative of attributes/properties ofa road or road segment represented by the line or segment. Preferablythe information includes information relating to properties of eachspecific line or segment other than curvature and/or elevationinformation.

It will be appreciated that information may be associated with alocation reference point relating to a wide range of possible propertiesof the specific line or segment associated with the node represented bythe location reference point in the first map. The information mayrelate to one or more of the following line or segment properties;length, speed limit, bearing, type of road, class of road, bearing anddirection of travel. The properties may include whether a speed camerais present, a safety rating etc. The properties may be present in adigital map database, derived from probe data, or may be suggested byusers of a navigation system or obtained in any other manner. However,ideally the properties are properties which may be associated with linesor segments in different maps, or which may be readily derived frominformation typically associated with lines or segments in maps toenable them to be matched across different maps, and should thereforepreferably be commonly used properties, or ones which can be derivedbased on commonly used properties.

The information relating to the properties of the line or segment whichis associated with a location reference point may be obtained directlyfrom data of the first digital map or in any other manner. Thus theinformation may correspond to line or segment attributes or propertiesfound in the first map database. In other embodiments the informationmay be derived using data from other databases referenced by the digitalmap, using a digital terrain map, or may be derived specifically for thepurposes of the invention. One example of a specifically derivedproperty might be a bearing of a line or segment.

In some embodiments a location reference point is additionallyassociated with information defining a relationship between thereference point and another e.g. successive or previous locationreference point in the list. For example, information relating to thedistance to the next reference point may be included. This may be usedto verify the candidate nodes identified in the second map.

In accordance with the invention curvature and/or elevation informationrelating to the specific line or segment emanating from or incident atthe node represented by the reference point may be associated with alocation reference point. The curvature and/or elevation information maybe associated with the reference point in a similar manner to theinformation relating to other properties of the line or segment. Asmentioned above, the elevation information relating to a line or segmentis preferably elevation difference e.g. gradient information, althoughit is envisaged that absolute or relative elevation information could beused to define the properties of lines or segments.

As mentioned above, in embodiments, the information associated with alocation reference point relating to the properties of a specific lineor segment in the first digital map emanating from or incident at thenode may be used in the step of identifying the at least on candidateline or segment. In preferred embodiments, the information used toidentify the at least one candidate line or segment is information otherthan information relating to the elevation and/or curvature of thespecific line or segment. The information relating to the elevationand/or curvature of the specific line or segment is used in a furtherstep of identifying a most likely candidate line or segment wheremultiple candidate lines or segments are identified. For example, inorder to determine the candidate lines or segments, information relatingto properties such as the direction of travel or class of the line orsegment may be used. The curvature and/or elevation information may beused in a subsequent step to determine the most likely of the identifiedcandidate lines or segments. In some arrangements it may not benecessary to use to the information relating to the properties of thespecific line or segment to identify candidate lines or segments. Forexample, all lines or segments emanating from or incident to a givencandidate node may be identified as candidates.

The step of identifying at least one candidate node or at least onecandidate line or segment preferably comprises creating a list ofcandidate nodes and/or candidate lines or segments. In some preferredembodiments the step of determining the most likely candidate nodeand/or candidate line or segment is a separate step from the step ofidentifying the at least one candidate node and/or candidate line orsegment. The step of identifying the most likely candidate node and/orline or segment is then a subsequent step to the step of identifying theat least one candidate node and/or line or segment.

It will be appreciated that when used, gradient information may beobtained in a similar manner to other types of elevation information asdescribed above. This may be obtainable directly from the first digitalmap data, or from a linear referenced resource linked to the first mapdatabase. Alternatively the information may be derived using a digitalterrain map. Any other suitable methods of obtaining gradientinformation may also be used.

The gradient information relates to the gradient properties of aspecific line or segment in at least one direction of travel into or outof the node represented by the reference point. In preferred embodimentsgradient information is provided for both inflow and outflow along theline or segment to or from the node.

The gradient information preferably includes the degree of gradient ofthe line or segment. The gradient information preferably includes atleast one gradient value for the line or segment. In preferredembodiments a gradient value is provided for a segment or line in bothdirections of travel toward and away from the node. A gradient value maybe an actual value based on or scaled from a gradient measurement or maybe a factor indicative of a range in which the gradient falls etc. Insome embodiments the gradient values defining bounds within which thegradient falls are used. The gradient value may be an average value.

When gradient information is associated with a reference point relatingto the gradient of the specific line or segment emanating from orincident at the node represented by the reference point, it will beappreciated that the gradient information will typically have limitedvalidity along the length of the line or segment away from the node. Inpreferred embodiments the gradient information includes a gradient valueand a distance of validity of the gradient value along the line orsegment from the node. The distance of validity might be in a range ofmeters or km, e.g. up to 200 m, etc. The distance of the validity is adistance along the line or segment over which the gradient value may beconsidered to reflect the gradient of the line or segment. A gradientvalue may be an average value over the validity distance.

The gradient information preferably includes a direction of thegradient. The gradient information preferably defines whether the lineor segment defines a positive or negative gradient, i.e. an upward ordownward gradient reflecting an increase or decrease in elevation. Thismay be conveyed by using a positive or negative gradient value. Thegradient may be measured in a direction facing outward from the node.

The curvature information relates to the curvature properties of a lineor segment in at least one of the directions into or out of the noderepresented by the reference point in the first map. In preferredembodiments curvature information is provided for both inflow andoutflow along the line or segment to or from the node.

The curvature information for a line or segment preferably includesinformation relating to the degree of curvature. The curvatureinformation relating to a line or segment may include at least onecurvature value. A curvature value may be provided for directions oftravel along the line or segment both into and out of the node.

The curvature value may be an actual curvature value or a factorindicating the range in which the curvature falls etc. A curvature valuemay be scaled e.g. to provide a value from 1-100. In some embodimentscurvature values defining bounds within which the curvature falls areused. The gradient value may be an average value. Preferably thecurvature value comprises radius of curvature information.

A validity distance for the curvature value may be provided. Thevalidity distance may be the distance along the line or segment from thenode over which the curvature value may be considered to reflect thecurvature of the line or segment.

In some embodiments a line or segment curvature may be obtained byfitting a circle to the line or segment to approximate the curvaturethereof at least at the node end of the line or segment. The radius ofthe circle may be used to derive an approximate radius of curvaturevalue. In some embodiments the curvature value is derived using areciprocal of the radius of the circle. A validity distance maycorrespond to a distance from the node to the point at which the circletouches the line or segment.

The curvature information preferably includes information relating tothe direction of curvature. The curvature information preferably defineswhether a curvature is a positive or negative curvature i.e.representing a left or right curve. The curvature is horizontalcurvature. The curvature is defined in a direction facing outward from anode.

A curvature value may be obtained in any suitable manner, and may beobtained directly or indirectly from a first map database, or associateddata. For example, a radius of curvature may be provided as part of themap data, or may be determined using the map data. Curvature informationmay be obtained in any of the manners described in relation to gradientinformation. For example, a linear reference resource may be associatedwith the map database which may be used to determine the curvatureinformation. Alternatively or additionally a digital terrain map may beused.

It has been found that by including curvature or elevation informationin the information associated with the reference points, the presentinvention affords considerable improvements in accuracy of identifyingnodes, lines or segments in the second map without significantlyincreasing required data storage levels.

It will be appreciated that in order to make a comparison to thecurvature or elevation e.g. gradient information associated with thereference point, it may be necessary to derive corresponding values fora candidate node or line or segment in the second digital map. Curvatureor elevation information may be determined in a similar manner asdescribed in relation to the first digital map. Elevation information inthe form of absolute or relative elevation e.g. height may be determinedusing coordinate information in the second map data. Gradientinformation may, if not directly available, readily be derived usingcoordinates of nodes or lines/segments and portions thereof in thesecond digital map. Curvature may also be determined, if not directlyavailable, using a simple calculation based on the second digital map.However, in other cases, curvature information or gradient informationmay be included in the second map database. Curvature or elevationinformation may be obtained using the second map data alone, or inconjunction with other data e.g. associated with the map data.

In accordance with the invention, the step of identifying the mostlikely candidate node and/or line or segment is carried out using theelevation and/or curvature information. It will be appreciated thatidentification of the most likely candidate node or most likely line orsegment may not be carried out solely by reference to the curvatureand/or elevation information. A range of different factors may be usedto determine the degree of matching between a candidate node orline/segment and the node or line/segment in the first map as defined bythe location reference point and its associated information. It hasfound, however, that such curvature or elevation information may bedecisive when other information has failed to unambiguously identify anode or line/segment, and thus provides particular advantages whetherused alone or in combination with other factors. In some embodiments thecurvature and/or elevation information may be used as the determiningfactor when identifying the most likely node or line/segment. When twodimensional position information fails to unambiguously identify acandidate node in the second map, the elevation information may providethe determining information. Similarly when determining a line/segment,the curvature or gradient may distinguish between two otherwise similarlines or segments e.g. where angular separation is small, and thelines/segments are of the same type.

The curvature and/or elevation information may be used alone todetermine the most likely node and/or line or segment, or morepreferably is used with other factors to determine the most likely nodeand/or line or segment. The information may be used in a rating processtogether with other factors.

In some embodiments the method comprises rating the identified candidatenodes or candidate lines or segments according to the likelihood thatthey correspond to the node in the first map or the line or segmentcorresponding to the node in the first map represented by the locationreference point. The step of identifying the most likely candidate nodeand/or line or segment may be carried out using the results of therating step. Where rating is carried out, it will take into account thecurvature and/or elevation information for the respective candidate nodeor line/segment. Thus, in embodiments the identified candidate nodes orcandidate lines or segments are rated using predetermined factorsincluding or consisting of curvature and/or elevation. In embodimentsother information from the information relating to the properties of theline or segment which is associated with the location reference point isused with the curvature and/or elevation information. In someembodiments other factors used in the rating step may include the classof road represented by the line or segment, the form of road representedby the line or segment etc. In preferred embodiments rating of thecandidate nodes and/or lines is carried out using a rating function. Arating function may combine the results of rating the candidates inrelation to different factors into a single rating value for the line ornode.

Use of a rating process enables a range of different properties of aline/segment or node to be weighed up to determine the most likelycandidate on the basis of predetermined criteria. The same ratingfunction or process may be used to rate candidate nodes orlines/segments or different functions may be used. A rating function maybe determined as desired.

Rating may provide an ordered list of candidate nodes or candidate linesor segments i.e. in order of likelihood that they correspond to a nodeor line or segment in the first map. A rating value may be assigned tothe or each candidate node or line or segment indicative of the relativelikelihood of the candidate. In some embodiments where multiplecandidate nodes or lines or segments are identified the candidate nodesor lines/segments are ranked according to the likelihood that theycorrespond to the node or line or segment in the first map.

It will be appreciated that in some situations, if after the routecalculation has been performed, the resulting path is considered to beincorrect for some reason, or doubtful, the calculation may be repeatedwith different pairs of nodes and lines/segments. Thus one or more ofthe less likely candidate nodes or lines/segments may be used in arepeat of the calculation. It may therefore be important to rate allcandidate nodes or lines/segments to facilitate any recalculation. Thismay also identify which candidate nodes are most doubtful.

In some embodiments identification of the most likely candidate nodeand/or rating of candidate nodes or the rating of likely candidate nodesand/or candidate lines or segments is carried out by reference tofactors including elevation and the distance between the locationreference point and the candidate node in the second map. The distancemay be an absolute or calculated distance. The distance is based onlatitudinal and/or longitudinal coordinate information. The location ofthe node in the second map may be extracted in the form of itscoordinates to facilitate comparison to coordinates defining theposition of the location reference point.

Identification of the most likely candidate line or segment or rating ofcandidate lines or segments may be carried out by reference to curvatureor elevation e.g. gradient criteria and preferably also other propertiesor attributes of the lines or segments. This may be achieved using theinformation relating to the other properties of the lines or segmentsassociated with the location reference point. This may enable similarityof the attributes or properties of the lines or segments to be takeninto account.

The route search used in accordance with the invention in any of itsembodiments may be of any type. Preferably, the route search is ashortest path route search, or includes an element which isfundamentally related to the distance between the start and end pointused as inputs to the route search. Different types of route searchesmay therefore be considered, such as Dijkstra's algorithm or A*.

Preferably, the route search operates on respective pairs of successivecandidate nodes, and is conducted such that the corresponding line orsegment of the first of the pair of nodes forms part of the routeresulting therefrom. This may be carried out by suitably limiting thesearch to require that the route includes the line or segment. It willbe appreciated that the route search is carried out using the mostlikely candidate nodes and most likely lines or segments correspondingto the nodes where multiple candidate nodes or lines or segments wereinitially identified. Thus, prior to carrying out the route search, thecurvature and/or elevation information associated with a reference pointis used to identify the most likely candidate node and most likelycorresponding candidate line or segment to be used.

Preferably the candidate nodes identified are real nodes in that theyare representative of real world intersections. The system may bearranged to only identify candidate nodes which are real nodes. Realnodes are more likely to be present on different digital maps. If thereference point is arranged to be representative of a real node in afirst map, the matching node in the second map should be a real noderather than an artificial node that might be nearby. Artificial nodesare more likely to be specific to a given map.

Preferably, the method further comprises the step of storing theextracted lines or segments obtained from each of the successive routesearches for consecutive pairs of location reference points in alocation path list. The location path list may be obtained by storingseparate location path lists obtained using the lines or segmentsextracted in each route search in a single list, or by storing the linesor segments in separate lists and concatenating the lists as a finalstep. The ultimate effect will be the same, that is to provide a meansof completely identifying the location.

Further preferably, the method includes a final step of applying anyoffset value which may be associated with the first and last locationreference points to the first and last lines in the resulting list oflines or segments present in the second digital map. The offset value asdiscussed below is a distance along the line between the start or end ofthe location reference path and the real start or end of the location inthe first digital map.

In some embodiments the method in accordance with any of the embodimentsof the invention includes the further steps of:

determining, from the second map, a path length value for each pathbetween successive candidate nodes within said second digital map, saidpath being established as a result of the route search between saidsuccessive candidate nodes,

comparing the path length value so determined with a distance to nextreference point (DNP) property associated with the first of the twolocation reference points used in the route search, and

in the event of that a difference between the path length value and theDNP property exceeds a predetermined threshold, either repeating theroute search using alternative candidate nodes and/or lines for one orboth of each successive pair of location reference points to attempt toreduce the difference between path length value and DNP attribute, orreporting an error.

In a preferred embodiment, the method further comprises displaying thesecond digital map on a display, and displaying the resolved location ora portion of it on the digital map. The resolved location may bedisplayed superposed, overlaid, juxtaposed or in conjunction with therelevant portion of the digital map.

The present invention is directed to a method of resolving a location.The location is a location in a first digital map which has beenreferenced to provide the ordered list of location reference pointswhich may be used to resolve the location in a second digital map. Thereferencing of the location in a first digital map to provide theordered list of location reference points enables the location toresolved i.e. be matched to a corresponding location in a second digitalmap using the ordered list of location reference points.

The step of resolving the location in the second map may be referred toas decoding the location from the ordered list. The term “decoding”herein refers to the resolution of the location in the second digitalmap from the ordered list of location reference points i.e. theidentification of the location in the second digital map using theordered list of location reference points.

The term “encoding” refers to the referencing of the location in thefirst digital map to provide the ordered list of location referencepoints for use in resolving the location in the second digital map. Thusthe step of referencing the location may be referred to as encoding thelocation. The location is encoded in that the location from the firstdigital map is converted to a different form which may be “decoded” orinterpreted for determining the location in the second map.

In accordance with the invention the location is resolved from encodedlocation information comprising or consisting of the ordered list oflocation reference points. The encoded location information may consistof the ordered list of location reference points or may additionallycomprise other encoded location information. The encoded locationinformation or ordered list of location reference points is machinereadable data.

The first digital map may be referred to as the encoder digital map. Thesecond digital map may be referred to as a decoder digital map.

The term digital map herein may refer to any form of map. It will beappreciated that a digital map need not be a conventional topologicallyintegrated navigation map. In particular, it has been found that thepresent invention provides methods which allow a location in a widerange of types of first digital map to be resolved in a second digitalmap. A first digital “map” need not be a complete map provided that itprovides some form of structure indicating nodes and lines/segmentsemanating therefrom or incident thereto which may form the basis oflocations to be resolved in another map. For example, it may comprise araw or semi processed probe data or any form of map-like data set. Probetraces may provide indications of map features such as roads, nodes etc,which may be encoded in the ordered list of reference points. Preferablythe first digital map is at least partially in the form of probe data.

The method enables a location e.g. path determined from such a “map” tobe resolved on a conventional map e.g. to identify a region of hightraffic levels to be displayed to a user of a navigation device. Forexample, the first digital map may comprise probe traces representativeof the position of vehicles in a given region. The map may only includeprobe traces for particular road segments and/or intersections ofinterest e.g. motorways. The probe traces may be used to determinetraffic levels. By matching the nodes or lines/segments corresponding topaths of probe traces indicative of roads/intersections to locations ina full digital map, regions to be associated with traffic informationmay be identified.

In accordance with the invention, the method may be carried out by anyform of apparatus. The method steps may be implemented by one or moreprocessors of the apparatus.

In a further aspect of the invention there is provided an apparatus,optionally handheld, arranged to carry out any of the methods hereindescribed. The apparatus may comprise a set of one or more processorsfor carrying out the steps of the method. The apparatus may be any formof computing apparatus. The apparatus may be referred to as a decoderapparatus. In some embodiments the method is carried out by a decoderapparatus of a mobile communications apparatus, and the apparatus is adecoder apparatus of a mobile communications apparatus. The mobilecommunications apparatus may be a mobile telephone, personal digitalassistant, or navigation apparatus. The navigation apparatus may be anin-vehicle navigation apparatus. The navigation apparatus may be aportable navigation device or an integrated navigation system such as anin-vehicle integrated navigation system. The navigation apparatus may beprovided by means of an application of a processing device which doesnot form part of a specific navigation device. For example the inventionmay be implemented using a suitable computer system arranged to executenavigation software. The system may be a mobile or portable computersystem e.g. a mobile telephone or laptop, or may be a desktop system.The decoder apparatus may be or comprise a set of one or more processorsfor carrying out the steps described.

Accordingly, the apparatus may be a personal navigation device (PND), apersonal digital assistant (PDA) or mobile telephone.

The apparatus preferably comprises means for displaying a digital map,and may comprise a memory storing the second digital map. The apparatuscomprises means for causing the resolved location, or a part thereof, tobe displayed on the display means.

Regardless of its implementation, a navigation apparatus in accordancewith the present invention may comprise a processor, memory, and digitalmap data stored within said memory. The processor and memory cooperateto provide an execution environment in which a software operating systemmay be established. One or more additional software programs may beprovided to enable the functionality of the apparatus to be controlled,and to provide various other functions. A navigation apparatus of theinvention may preferably include GPS (Global Positioning System) signalreception and processing functionality. The apparatus may comprise oneor more output interfaces by means of which information may be relayedto the user. The output interface(s) may include a speaker for audibleoutput in addition to the visual display. The apparatus may compriseinput interfaces including one or more physical buttons to controlon/off operation or other features of the apparatus.

In accordance with a further aspect the present invention extends to adecoder apparatus for resolving a location from an ordered list oflocation reference points in accordance with the method of any of theaspects and embodiments of the invention.

In accordance with a further aspect of the invention there is thereforeprovided a decoder apparatus comprising means for resolving a locationfrom an ordered list of location reference points, each locationreference point being representative of a node in a first digital mapand each location reference point being associated with informationrelating to the properties of a specific line or segment in said firstdigital map emanating from or incident at the node, the decoderapparatus comprising means for carrying out a method comprising thesteps of:

(i) for each location reference point, identifying at least onecandidate node existing in a second digital map, and identifying atleast one candidate line or segment existing in said second digital mapemanating from or incident at said candidate node;

(ii) performing a route search within said second digital map between:at least one of an identified candidate node and a correspondingidentified candidate line or segment emanating therefrom or incidentthereat, and at least one of an identified candidate node for the nextlocation reference point appearing in the list and a correspondingidentified candidate line or segment emanating therefrom or incidentthereat, and extracting from said second digital map each line orsegment forming part of the route so determined between said candidatenodes; and

(iii) repeating step (ii) for each consecutive pair of locationreference points up to and including the final location reference pointappearing in the list,

wherein, when more than one candidate node and/or more than onecandidate line or segment in the second digital map is identified for agiven location reference point, the method further comprises a step ofidentifying a most likely candidate node and/or a most likely candidateline or segment, and using the most likely candidate node and/or mostlikely candidate line or segment in the route search,

wherein curvature and/or elevation information is associated with eachlocation reference point, the curvature and/or elevation informationrelating to the location reference point and/or the specific line orsegment emanating from or incident at the node represented by thelocation reference point in the first digital map, and

wherein the method comprises using the elevation and/or curvatureinformation in said step of identifying the most likely candidate nodeand/or most likely candidate line or segment when more than onecandidate node and/or candidate line or segment is found in the seconddigital map.

The present invention in this further aspect may include any or all ofthe features described in relation to the other aspects of theinvention. Thus the decoder apparatus may comprise means for carryingout any of the method steps described. It will be appreciated that thedecoder apparatus may include a set of one or more processors forcarrying out any of the steps defined or in accordance with the methodsof the invention in any of their aspects or embodiments.

The process of encoding a location in a first digital map to provide theordered list of location reference points which may be decoded toresolve the location in a second digital map provides a way ofcommunicating a location from the first digital map to the seconddigital map.

The ordered list of location reference points may be transmitted by atransmitter of an encoder apparatus and received by a receiver of adecoder apparatus for use in the method of the present invention in anyof its embodiments. In some embodiments the method comprises receivingthe ordered list of location reference points, and the decoder apparatusmay comprise a receiver for carrying out this step. The ordered list oflocation reference points may be transmitted with other locationspecific information such as traffic information or weather information.In some embodiments the method comprises receiving location specificinformation such as traffic or weather information in association withthe ordered list of location reference points.

In some embodiments the second digital map may be a digital map of areceiving apparatus and the first digital map may be a digital map of atransmitting apparatus. The transmitting apparatus encodes a location onthe first digital map to provide the ordered list of location referencepoints and transmits the ordered list of location reference points to areceiver for decoding to determine the corresponding location on thesecond digital map.

The present invention extends to a method and system involving theencoding and transmission of the ordered list of location referencepoints.

In accordance with a further aspect of the invention there is provided amethod of communicating location information, the method comprising:

an encoder apparatus encoding a location represented in a first digitalmap, the location being expressible as a list of nodes and lines and/orsegments emanating from or incident at the nodes, wherein the step ofencoding the location comprises providing an ordered list of locationreference points being representative of nodes in the first digital mapand each being associated with information representative of propertiesof a specific line or segment in the encoder digital map emanating fromor incident at the nodes, wherein the method includes the step ofassociating curvature and/or elevation information with each locationreference point, the curvature and/or elevation information relating tothe location reference point and/or the specific line or segmentemanating from or incident at the node in the first digital maprepresented by the location reference point;

the method further comprising the encoder apparatus transmitting theordered list of location reference points and the associated informationto a decoder apparatus. Preferably the decoder apparatus is arranged toresolve the encoded location from the received ordered list of locationreference points by a method comprising the steps of any of the aspectsor embodiments of the invention.

In accordance with a further aspect of the present invention there isprovided an encoder apparatus for encoding a location represented in afirst digital map, the location being expressible as a list of nodes andlines and/or segments emanating from or incident at the nodes, whereinthe encoder apparatus is arranged to carry out a step of encoding thelocation to provide an ordered list of location reference points beingrepresentative of nodes in the first digital map and each beingassociated with information representative of properties of a specificline or segment in the encoder digital map emanating from or incident atthe nodes, wherein curvature and/or elevation information is associatedwith each location reference point, the curvature and/or elevationinformation relating to the location reference point and/or the specificline or segment emanating from or incident at the node in the firstdigital map represented by the location reference point;

the encoder apparatus further comprising means for transmitting theordered list of location reference points and the associated informationto a decoder apparatus. The decoder apparatus may comprise means forresolving the encoded location from the received ordered list oflocation reference points by a method comprising the steps of any of theaspects or embodiments of the invention.

In accordance with a further aspect of the invention there is provided amethod of communicating location information, the method comprising:

an encoder apparatus encoding a location represented in a first digitalmap, the location being expressible as a list of nodes and lines and/orsegments emanating from or incident at the nodes, wherein the step ofencoding the location comprises providing an ordered list of locationreference points being representative of nodes in the first digital mapand each being associated with information representative of propertiesof a specific line or segment in the encoder digital map emanating fromor incident at the nodes, the method including the step of associatingcurvature and/or elevation information with each location referencepoint, the curvature and/or elevation information relating to thelocation reference point and/or the specific line or segment emanatingfrom or incident at the node in the first digital map represented by thelocation reference point, the method further comprising the encoderapparatus transmitting the ordered list of location reference points andthe associated information to a decoder apparatus;

the method comprising the decoder apparatus carrying out a methodcomprising the steps of:

receiving the transmitted ordered list of reference points andassociated information; and

(i) for each location reference point, identifying at least onecandidate node existing in a second digital map, and identifying atleast one candidate line or segment existing in said second digital mapemanating from or incident at said candidate node;

(ii) performing a route search within said second digital map between:at least one of an identified candidate node and a correspondingidentified candidate line or segment emanating therefrom or incidentthereat, and at least one of an identified candidate node for the nextlocation reference point appearing in the list and a correspondingidentified candidate line or segment emanating therefrom or incidentthereat, and extracting from said second digital map each line orsegment forming part of the route so determined between said candidatenodes; and

(iii) repeating step (ii) for each consecutive pair of locationreference points up to and including the final location reference pointappearing in the list,

wherein, when more than one candidate node and/or more than onecandidate line or segment in the second digital map is identified for agiven location reference point, the method further comprises a step ofidentifying a most likely candidate node and/or a most likely candidateline or segment, and using the most likely candidate node and/or mostlikely candidate line or segment in the route search,

wherein the method comprises using the elevation and/or curvatureinformation in said step of identifying the most likely candidate nodeand/or most likely candidate line or segment when more than onecandidate node and/or candidate line or segment is found in the seconddigital map.

In accordance with a further aspect of the invention there is provided asystem of communicating location information, the system comprising:

an encoder apparatus comprising means for encoding a locationrepresented in a first digital map, the location being expressible as alist of nodes and lines and/or segments emanating from or incident atthe nodes, wherein the encoder apparatus is arranged to encode thelocation to provide an ordered list of location reference points beingrepresentative of nodes in the first digital map and each beingassociated with information representative of properties of a specificline or segment in the encoder digital map emanating from or incident atthe nodes, the encoder apparatus associating curvature and/or elevationinformation with each location reference point, the curvature and/orelevation information relating to the location reference point and/orthe specific line or segment emanating from or incident at the noderepresented by the location reference point;

wherein the system further comprises a decoder apparatus, the encoderapparatus comprising means for transmitting the ordered list of locationreference points and the associated information to the decoderapparatus, and wherein the decoder apparatus is arranged to carry out amethod comprising the steps of:

receiving the transmitted ordered list of reference points andassociated information; and

(i) for each location reference point, identifying at least onecandidate node existing in a second digital map, and using saidinformation associated with the location reference point, identifying atleast one candidate line or segment existing in said second digital mapemanating from or incident at said candidate node;

(ii) performing a route search within said second digital map between:

at least one of an identified candidate node and a correspondingidentified candidate line or segment emanating therefrom or incidentthereat, and at least one of an identified candidate node for the nextlocation reference point appearing in the list and a correspondingidentified candidate line or segment emanating therefrom or incidentthereat, and extracting from said second digital map each line orsegment forming part of the route so determined between said candidatenodes; and

(iii) repeating step (ii) for each consecutive pair of locationreference points up to and including the final location reference pointappearing in the list,

wherein, when more than one candidate node and/or more than onecandidate line or segment in the second digital map is identified for agiven location reference point, the method further comprises a step ofidentifying a most likely candidate node and/or a most likely candidateline or segment, and using the most likely candidate node and/or mostlikely candidate line or segment in the route search,

wherein the method comprises using the elevation and/or curvatureinformation in said step of identifying the most likely candidate nodeand/or most likely candidate line or segment when more than onecandidate node and/or candidate line or segment is found in the seconddigital map.

The present invention in these further aspects may include any or all ofthe features described in relation to the other aspects of theinvention. Thus the decoder apparatus may comprise means for carryingout any of the method steps described. It will be appreciated that thedecoder and/or the encoder apparatus may include a set of one or moreprocessors for carrying out any of the steps of the methods defined.

The present invention extends to a computer program product comprisingcomputer readable instructions executable to perform a method accordingto any of the aspects or embodiments of the invention, or to cause anapparatus to perform such methods.

In a yet further aspect, there is provided such a computer programembodied on a computer readable medium.

The techniques of the present invention in any of its aspects may beapplied to any context where it is desirable to be able to match alocation in one digital map to a location in another digital map.

The present invention is particularly advantageous in methods in whichit is necessary to transmit location information based on one digitalmap to a system operating on the basis of another digital map to enablethe location information to be resolved in the other digital map. Onecontext in which this may be relevant is when a central controllertransmits location information to one or more remote systems. This maybe carried out as part of a process for transmitting location specificinformation, such as weather or traffic information. In embodiments theencoder apparatus is provided by a central controller. The centralcontroller could be a central controller of a navigation system. Thedecoder apparatus may be provided by a local apparatus such as a mobilecommunications apparatus, or a navigation apparatus in communicationwith the central controller.

The methods of the present invention may allow the transmission oflocation information associated with traffic or weather information,e.g. to users of navigation apparatus.

In some embodiments the location resolved is a location associated withweather or traffic information. In embodiments in which the ordered listof location reference points is received, the method may furthercomprise receiving location specific information such as weather ortraffic information associated with the ordered list of locationreference points, and the receiver may be arranged to do so. The methodmay further comprise displaying location specific information such asweather or traffic information on the second digital map associated withthe resolved second location. In embodiments involving the transmissionof the ordered list of location reference points, the method may furthercomprise transmitting location specific information such as weather ortraffic information with the ordered list of location reference points,and the encoder apparatus may comprise means for so doing.

In accordance with the invention in any of its aspects or embodimentsthe first digital map and the second digital map may be identical.However, preferably the first digital map and the second digital map aredifferent i.e. non identical.

In accordance with the invention in any of its aspects, the location ispreferably a path, most preferably a path in a road network. The path ispreferably a continuous path.

It will be appreciated that references to roads, road networks, or roadsegments etc may refer to any navigable thoroughfare, network or segmentthereof, represented in a digital map.

As discussed above, the encoded location information or the ordered listof reference points and associated information may be transmitted from afirst encoder apparatus to a second decoder apparatus. In this way alocation in a first digital map may be encoded to provide machinereadable data that is transmitted to a receiver system and used by thereceiver system to resolve the location in the second digital map.

The present invention provides exceptional advantage over knowntechniques in that a potentially lengthy location can be resolved usingonly relatively few location reference points and the correspondinginformation associated therewith. From these basic elements, candidatenodes and lines or segments can be identified with reference to anymodern digital map, as the invention takes advantage of the fact thatmost modern digital maps include practically every road intersection andprovide a node for them. Furthermore, the majority of digital maps alsoinclude at least some basic attributes or properties for the form andclass of roads between such intersections.

As mentioned above, a shortest path route search is useful in the routesearch as it is one of the simplest route search algorithms available,well known and rapid to implement and execute. A further usefuladvantage is the route search algorithm employed in the encoder need notnecessarily be the same as that used during resolution of the locationpost-transmission. For example, it is possible to implement an A* onencoder side and a Dijkstra algorithm on decoder side. As both thesealgorithms are based primarily on a distance parameter between start andend point, they will result in the same route. In the case of A*, itshould be mentioned that the heuristic element of the A* algorithm wouldneed to meet certain requirements, but in all practical cases, thiswould in any event be the case. Accordingly, in embodiments of thepresent invention, it is only required that a shortest-path is found. Inreal road networks, the shortest path is usually unique, but one canimagine exceptional circumstances, such artificial grids or short routesaround rectangular road layouts in cities where more than a singleshortest path route may be identified.

Further advantages of the invention will become apparent from thefollowing specific embodiment of the invention which is described by wayof example with reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a schematic flowchart of the method of the presentinvention,

FIGS. 2-5 provide schematic representations of a first digital mapincluding nodes and segments and in particular

FIG. 2 illustrates an example network,

FIG. 3 illustrates a location path desired to be encoded within thatnetwork,

FIG. 4 illustrates the shortest path between start and end nodes of anextended path which partially includes that location, and

FIG. 5 illustrates the location reference points required to completelyreference that location,

FIGS. 6-11 provide schematic representations of a second digital mapincluding nodes and segments and in particular

FIG. 6 illustrates the network of FIG. 2 but as represented by nodes andsegments appearing in the second digital map,

FIG. 7 illustrates candidate nodes identified within the second digitalmap,

FIG. 8 illustrates the candidate lines identified within the seconddigital map, and

FIG. 9 illustrates the most likely candidate lines by which the locationis completely referenced,

FIG. 10 shows the shortest path as algorithmically determined betweenthe most likely lines, and

FIG. 11 shows the location as resolved,

FIGS. 12-20 provide various schematic illustrations useful in thecontext of the logical and physical data formats, described below, andspecifically,

FIG. 12 shows the required consecutive connection of location referencepoints (LRPs),

FIG. 13 illustrates how a bearing is calculated for one LRP as regards afollowing LRP,

FIG. 14 shows how bearings can vary,

FIG. 15 demonstrates how a “distance to next point” attribute isdetermined for a LRP,

FIG. 16 illustrates the use of offsets,

FIG. 17 shows the manner in which LRPs are provided with attributes,

FIGS. 18/19 illustrates nodes to be avoided during the encoding of alocation reference, and

FIG. 20 illustrates how bearing values for a LRP fall within 1 of 32discrete sectors of a circle;

FIG. 21 illustrates some baseline references which may be used tocalculate elevation or ellipsoidal height;

FIG. 22 illustrates an example in which different lines associated witha node have different gradients;

FIGS. 23 a-c illustrate the way in which curvature may be determined forlines.

DETAILED DESCRIPTION

The following description of the invention is provided in terms ofsegments, but it is to be understood that the method can be appliedequally to lines, or to combinations of lines and segments whichtogether are representative of a continuous path through a road network.

It is useful in the context of the present invention to firstly providea brief description of the manner in which a location reference isencoded, and the particular logical and physical data formats used inthe encoding process. The latter are provided as an Appendix to thisspecification, and reference to this Appendix is to be had throughoutthe following description.

Referring firstly to FIGS. 2-5, a first (encoder) digital map is shownin FIG. 2 and consists of 15 nodes and 23 lines (two-way lines arecounted twice). The nodes are numbered from 1 to 15. The necessary lineattributes are shown beside every line using the format: <FRC>, <FOW>,<Length in meter>. FRC is an abbreviation for “Functional Road Class”and FOW is an abbreviation for “Form of Way”, both of which aredescribed in greater detail in the Appendix below. The arrowheadsindicate the possible driving direction for each line. Other attributesor properties of the lines are not shown, such as bearing, curvature orgradient.

The location to be encoded is shown in FIG. 3 using bold lines. Thelocation starts at node 3 and continues over the nodes 5, 7, 10, 11, 13,14 and ends at node 15. Its total length in the encoder map is 685meters. The ordered list of lines and the map to be used during encodingserves as input for the encoder.

Encoding:

In the first step of the encoding process the location will first bechecked for validity. Since the location is connected and drivable andall functional road classes along the location are between 0 and 7, thislocation is considered valid. While it is possible in the encodingprocess to include a check as to whether turn restrictions within mapdata are enabled or not, this step is omitted for brevity here.

The encoder second step is to check the start and end node of thelocation as being real nodes according to certain predetermined dataformat rules. The end node 15 has only one incoming line and istherefore valid. The start node 3 also has two incident lines but hereit is one outgoing and one incoming line. Therefore this node is notvalid and the encoder searches for a real node outside the location. Theencoder will find node 1 to be a real node and it also expands thelocation uniquely. Node 1 is chosen as the new start node for thelocation reference and there will be a positive offset of 150 meters.The total length of the location reference path results in 835 meters.

The third step of encoder is to proceed to calculate a shortest-pathbetween the start line (line between nodes 1 and 3) and the end line(line between nodes 14 and 15) of the location. The resultingshortest-path is outlined in FIG. 4 using bold lines. The shortest-pathhas a length of 725 meters.

The next (4^(th)) step of the encoding process is now to check whetherthe location is covered by the calculated shortest-path. It willdetermine that this is not the case and there is a deviation after node10.

According to the principles outlined in applicant's WO 2010/000707 A1,the encoder will determine the line from node 10 to 11 as becoming a newintermediate location reference point. Node 10 is a real node since itcannot be stepped over during route search and the shortest-path to thisline covers the corresponding part of the location completely. Thelength of the location being covered after this first shortest-pathcalculation is 561 meters.

The next encoding step prepares the route calculation in order todetermine a shortest-path for the remaining part of the location (fromnode 10 over 11, 13 and 14 to 15). The shortest-path calculation willtherefore start at the line from 10 to 11 and ends at the line from 14to 15.

The encoder returns to step 3 above and will determine a shortest path(length: 274 meters) between 10 and 15 and step 4 above will return thatthe location is now completely covered by the calculated shortest paths.

As a next step, the location reference path will be composed of the twoshortest-paths and the ordered list of location reference points willnow be formed. FIG. 5 shows the lines in bold which are selected for thelocation reference points. The first location reference point points tothe line from node 1 to 3 and indicates the start of the locationreference path, the second location reference point points to the linefrom node 10 to 11 and this line was necessary to avoid the deviationfrom the location. The last location reference point points to the linefrom node 14 to 15 and indicates the end of the location reference path.

The final step (excluding any intervening validity checks) is theconversion of the ordered list of LRPs into a Binary location reference,and the description provided in the Appendix hereof for both the LogicalData Format and Physical Data Format as prescribed by the applicant willassist in the reader's understanding. It is to be emphasised that thedescription provided in the Appendix and providing details of thespecific formats is provided only as an example, and the skilled readerwill appreciate that other formats are possible.

Turning now to the present invention, the physical data ultimatelytransmitted is a binary representation of the three location referencepoints (LRPs) identified above and includes data associated with theLRPs relating to the properties of the lines corresponding to each LRP(“attribute data”) in order that the appropriate lines can beidentified. The data also includes the geographic position of the LRP.In accordance with embodiments of the invention, the data includes threedimensional coordinates including an ellipsoidal height for the LRP, anddata relating to the gradient and curvature of the correspondingline(s). Other attributes may be associated with the LRP relating to therelationship of the LRP other LRPs e.g. DNP (Distance to Next Point).One of the fundamental bases for this invention is that there is astrong possibility that the digital maps used in the encoder and decoderwill be different. Of course, they may be the same in which case thelocation may be resolved slightly more quickly as candidate nodes lineswill be more exactly and quickly identified, but in any event, themethod of the invention must still be applied.

Referring to FIG. 6, which shows the representation of the same portionof a road network as that shown in FIG. 2, but according to a different,second digital map. A comparison of the two Figures will immediatelyidentify that there are material differences in the number and positionof both nodes and lines.

Referring also to FIG. 1 in which an overview flowchart 100 of theprocess according to one embodiment of the invention is shown, the firststep 102 in the process is to decode the incoming or wirelesslytransmitted (most commonly in the case of a mobile device) binary data(or XML or other machine-readable representation) resulting from theearlier encoding process and structured according to the physical dataformat. The decoding of this binary data is not an essential element ofthe invention, which applies to the resolution of a location from a listof location reference points—the decoding of the binary data is merely ameans of identifying the requisite location reference points.

At step 104, a validity check is performed—failure at this initial stepwill result in termination of the procedure and the reporting of anerror as indicated at 124. It should be mentioned that the encodingprocess and reduction to physical format is a lossy process, andtherefore the information extracted from the binary data will not be asaccurate as before creating the binary stream. On account of the usageof intervals for the bearing and the distance to next point (DNP) theexact value cannot be extracted and therefore precision is limited to asmall interval containing the exact value.

The information being extracted from the binary data example is shown inTables 1, 2 and 3 (and is further referenced in FIG. 1 at steps 106,108, and 110 respectively). Although not shown in Table 1 below, inaccordance with the invention, a third ellipsoidal height coordinate isassociated with each LRP and extracted from the data. Furthermore,although not shown in Table 1, curvature and gradient information isassociated with each LRP, and extracted from the data in a similarmanner to the other information found in Table 2. The curvature andgradient information will include an indication as to the direction ofcurvature or gradient, a value for the curvature or gradient, and adistance of validity of the curvature or gradient.

TABLE 1 Decoded coordinates LRP index Longitude Latitude 1 6.12682°49.60850° 2 6.12838° 49.60397° 3 6.12817° 49.60304°

TABLE 2 Decoded LRP information LRP index FRC FOW Bearing LFRCNP DNP 1FRC3 MULTIPLE_CARRIAGEWAY 135.00°-146.25° FRC3 527.4 m-586.0 m 2 FRC3SINGLE_CARRIAGEWAY 225.00°-236.25° FRC5 234.4 m-293.0 m 3 FRC5SINGLE_CARRIAGEWAY 281.25°-292.50° — 0 m

TABLE 3 Decoded offset information Offset Value Positive offset 117.2m-175.8 m Negative offset -no offset available-

This information is sufficient to resolve the location on the decodermap shown in FIG. 6. This map consists of 17 nodes and 26 lines (two-waylines are counted twice). To avoid confusion, all nodes referenced inthe decoder map are prefaced with “X”.

This map differs from the encoder map (see FIG. 2) in several ways. Somelength values are different (e.g. line from node X3 to X5), somefunctional road class values have changed (e.g. line from node X3 X5)and there are two more nodes X16 and X17 and also additional linesconnecting these new nodes. The challenge of the decoder is to resolvethe location in this different map.

After validating the data, and providing a list of decoded locationreference points (LRPs), their coordinates and their attributes, asindicated at step 112 in FIG. 1, the decoder then begins processing eachLRP in the list at step 114 to firstly determine candidate nodes foreach LRP. The result of this processing, which is effected by using theLRP coordinates and identifying the nearest node(s) appearing in thedecoder digital map 118 (as indicated generally at 116) is to provide alist of candidate nodes for each LRP. This step may be carried out byreference to two dimensional coordinates for the LRP i.e. excluding theellipsoidal height coordinate. Map Nodes being distant from the LRPs bygreater than a predetermined threshold value can be eliminated, as shownat 120. FIG. 7 shows the candidate nodes (bold circle) which arepositioned close by the longitudinal and latitudinal coordinates of thelocation reference points. For the location reference point 1 and 2 (intables 1 & 2 above), in this example, there exists only one candidatenode but for the last location reference point two candidate nodes X15and X16 are possible.

Also as part of the processing of the LRPs and their attributes,candidate lines for each location reference point are also identified.The bold lines in FIG. 8 are the candidate lines for this example. Thefirst LRP is represented by candidate point X1 which in turn has twooutgoing lines as candidates, the second LRP having candidate point X10has three outgoing lines as candidate and the last location referencepoint has two incoming lines (one for each candidate node X15 and X16).If the processing conducted at 114 fails to identify a candidate linefor any of the LRPs, then the process must fail, as indicated at 122,124. Once the processing is complete, list(s) of candidate nodes andlines for each LRP are provided at 126.

The embodiments of the present invention provide the ability to betterdetermine the best match when multiple candidate nodes and/or lines areidentified in the second digital map. In the example of FIG. 8, it hasbeen shown that two candidate nodes, X15 and X 16 are possible matchesfor the last LRP. These candidate nodes will typically be identifiedusing only the longitudinal and latitudinal coordinate information forthe corresponding LRP and listed in step 126 (FIG. 1). While these nodesare close to one another when taking into account only the longitudinaland latitudinal coordinates, they may differ significantly in elevation.This would be the case, for example, in a stacked type interchange,where two or more complex highways come together at different verticallevels to result in nodes or intersections at different vertical levels,but closely similar position based on latitude and longitude.

Accordingly, as the coordinate information for each LRP additionallyincludes ellipsoidal height information as shown in Table 1, theellipsoidal height information may be used in a further step todetermine which of the candidate nodes X15 or X16 is the better match tothe coordinates of the LRP. Thus an initial identification of candidatenodes may be carried out on the basis of longitudinal and latitudinalcoordinate information associated with an LRP. If multiple candidatenodes are identified, the most likely node may be determined byadditionally taking into account ellipsoidal height coordinateinformation associated with the LRP. This may be achieved in any manner.In preferred embodiments described below, the candidate lines arecompared using a rating function 128 of FIG. 1, using the ellipsoidalheight information.

Turning to the identification of candidate lines, as mentioned above,multiple candidate lines may also be identified and listed in step 126of FIG. 1. Referring to the example of FIG. 8, for node X10, threeoutgoing lines are identified candidates. The candidate lines may simplybe all outgoing lines from the node X10, or may be lines which have beenpreselected with reference to certain of the information associated withthe LRP other than curvature and gradient information for the line e.g.as shown in Table 2, such as class of road, direction of travel etc. Inaccordance with the invention, curvature and/or gradient information forthe corresponding line is additionally associated with each LRP and usedto distinguish between multiple candidate lines identified such as usinga rating function 128.

While in the example of FIG. 8, a bearing attribute is associated witheach LRP as described in WO 2010/000706, it has been found that oftenlines may have relatively small angular separation such that a bearingattribute may not unambiguously identify a most likely candidate linefor an LRP. However, such lines may have significantly differentgradient and/or curvature. For example of two paths with a small angularsplit, one path may go down a gradient and another may go up. Likewise,two paths might have the same bearing as calculated herein, but may havedistinct horizontal curvature profiles.

In embodiments of the invention, when multiple candidate lines areidentified, the curvature and/or gradient information associated withthe corresponding LRP is used to determine the most likely line in thesecond digital map. As in relation to the identification of a mostlikely node, determining of a most likely candidate line may proceed inany manner provided it involves using the curvature and/or gradientinformation. For example the curvature and/or gradient information maybe used to distinguish between two lines which have already beenidentified and which could not be distinguished on the basis of otherinformation associated with the LRP, or could be used together withother information. In either case, the curvature and/or gradientinformation is preferably used in a rating step as described below.

It will be appreciated that while in preferred embodiments elevationinformation e.g. ellipsoidal height information is associated with eachLRP to describe the position of the node represented thereby, andcurvature and gradient information for the corresponding lines isadditionally associated with the LRP, it is not necessary that all ofthis information is associated with each LRP. For example, anycombination of at least one of ellipsoidal height information for theLRP and curvature information or gradient information for thecorresponding lines may be associated with an LRP to provide benefits indistinguishing between multiple candidate nodes or lines. Likewise,determining a most likely candidate line may not involve using bothgradient and curvature information where provided, but may be carriedout using gradient or curvature information.

When more than one candidate node and/or line is identified for eachLRP, some means of rating or ranking the candidates is used.Accordingly, a rating function 128 is applied to the lists of candidatenodes and/or lines (preferably both) according to their compliance withthe attributes and other information associated with the locationreference point. Generally, the important aspect to the rating functionis that its application will result in a ranking of one or preferablyboth of the candidate nodes and lines according to one or more metrics.As described above, in accordance with the invention, rating or rankingof candidate nodes is based, at least in part, on the ellipsoidal heightof the LRP. Rating or ranking of candidate lines is based, at least inpart, on the curvature of a corresponding line, or the gradient of acorresponding line.

The skilled reader will appreciate that many different mathematicaland/or statistical bases exist for rating functions, and in the contextof this application therefore it is sufficient to explain that a ratingfunction or part thereof specific to nodes is based on at least theellipsoidal height of the LRP. In addition, the rating function forcandidate nodes may include some measure of the distance of candidatenodes to the physical or geographic position of the decoded LRP on thebasis of latitudinal and longitudinal coordinate information. A ratingfunction or part thereof specific to candidate lines is based on one orboth of gradient or curvature of the line, and may include some means ofassessing the correlation between the type of candidate line identifiedand those represented in the decoded data, e.g. by reference to type ofline, and possibly also some bearing of those candidate and identifiedlines. It will be appreciated that a single rating function may be usedwith parts relevant to lines and nodes respectively.

The rating function compares various parameters of the nodes and/orlines in the second map to values for the first digital map e.g. foundin data of the first digital map. The smaller the differences betweenthe parameters and the values for the first digital map, the higher therating value ascribed. A rating function may combine ratings formultiple parameters and combine them into a single value. A higher valuemay correspond to a better match.

In one example a rating function takes into account a distance betweenthe coordinates of the start (or end) node and the coordinates found inthe data, a difference of the angle data of the candidate line and thevalue found in the data, a difference of a height of a candidate nodeand the value found in the data, a difference of the functional roadclass value of the candidate line and the value found in the data, and adifference of the form of way of the candidate line and the value foundin the data.

Once the rating function has been applied, most likely candidates areidentified at step 130 in FIG. 1, and this can be seen in the networkillustrated in FIG. 9—specifically, the most likely candidate lines arethose between nodes X1 and X3, between X10 and X11, and between X14 andX15. These lines will be used for the following shortest-pathcalculation in step 132 of the resolution process.

The shortest-path calculation is performed on each successive pair ofLRPs starting with the first and the second LRPs, and as shown by arrow134 in FIG. 1, this shortest path algorithm determines a route throughthe digital map 118 using said most likely candidate nodes and linesresulting ultimately in the identification of the route shown in FIG.10. Each shortest path so determined may be validated in step 136 bydetermining a path length value between the start node and end node ofthat path, and then comparing this value to the available DNP attributespecified in the data for each LRP, as indicated by arrow 138. Thelength of the first shortest-path (from node X1 to node X10) is 557meters and this value fits into the DNP interval of the first LRP seenabove in Table 2 (527.4 meters-586.0 meters). The length of the secondshortest-path (from node X10 to node X15) is 277 meters and this valuealso fits into the DNP interval of the second LRP (234.4 meters-293.0meters). The shortest-paths are therefore validated and the decoder doesnot fail but instead proceeds to steps 140 and 142, firstly providing aconcatenated format, i.e. an ordered list of all the lines present inthe complete path, and finally in step 142, trimming the concatenatedshortest-path according to the offsets retrieved as shown schematicallyby arrow 144. In this example, only a positive offset is provided andtherefore the shortest path is trimmed at its start, as clearly shown inFIG. 11. The only node fitting in the positive offset interval (Table 3above, 117.2 meters-175.8 meters) is node X3.

As can be seen from the above, the present invention provides a highlyreliable and efficient method of resolving a location from receivedencoded data, and in particular may resolve locations accurately evenwhen multiple possibilities exist in the second digital map forcandidate nodes and/or candidate lines. This may be achieved with only12 additional bytes data needing to be stored to include height,gradient and curvature information. It has been found that the inventionmay allow situations to be rectified where two or more original maps usedifferent modelling specifications for node positioning. LRPs may bebuilt out of raw or semi-processed probe data for comparison againststandard topologically integrated navigational maps. Locations may beresolved in a second map where the location has been referenced from anincomplete map or data set, such as a set of probe data.

The particulars of the logical and physical data formats are nowprovided by way of example. The reader should be aware that thefollowing Appendix provides only one of many possible specificdefinitions for these formats.

The example given in the Appendix is consistent with the disclosure ofWO 2010/000706 A1. In accordance with embodiments of the presentinvention, the logical and physical data format will differ in thefollowing manners.

The LRP will contain a set of three coordinates, specified in WGS84,including longitude, latitude and ellipsoidal height values.

The LRP is associated with information relating to the curvature andgradient of each corresponding line.

The definition of an LRP will be modified by means of bits containedwithin the status byte (see 1.5.2 below). One of the bits reserved forfuture use, RFU may be modified to act as a flag indicating that 3Dcoordinates are present for the LRP. The bit will have value 1 when theellipsoidal height coordinate is used. One or more additional bitslabelled RFU may be used to indicate whether additional attributeinformation in the form of curvature and/or gradient information for acorresponding line is present.

Some further details in relation to each of these additional parameterswill now be given.

Ellipsoidal Height

Ellipsoidal height may be determined for the location of an LRP in oneof a number of ways.

Ellipsoidal height may be a feature of the original map database of thefirst digital map in which case it may be copied directly from thedatabase i.e. for the given node.

There may be a standardized linear referenced resource that is anadjunct to the first digital map database. This linear referenceresource could be e.g. a GPS probe trace or some other product of amobile survey. In this case a spatial lookup may be used to determine arelevant height value based upon a spatial tolerance. The lookup may mapto a node or vertex in the data stream.

In yet another alternative, a standardized Digital Terrain Map (DTM) maybe used. DTMs of different resolutions, although preferably less than 10m may be used. The DTM should take into account the built-up area withinand around the road bed. This could be based upon Light Detection AndRanging (LIDAR), Mobile Mapping Laser Point Clouds or various other DTMconstruction techniques. A raster look up may be used.

FIG. 21 illustrates some baseline references which may be used tocalculate elevation or ellipsoidal height. The Ellipsoid height (h) isthe distance along the ellipsoid normal Q to P. The Geoid Height (N) isthe distance along the ellipsoid normal Q to P_(o). The OrthometricHeight (H) is the distance along the plumb line P_(o) to P. Theellipsoid height h is the sum of the Geoid Height N and the OrthometricHeight H.

Gradient

The gradient describes the gradient flowing in and/or out of the LRPi.e. node along the line incident thereto or emanating therefrom. Thegradient information associated with the LRP includes an indication ofthe direction of the gradient, the gradient value, and preferably avalidity distance for the gradient value for one or both directions intoand out of the LRP.

The line i.e. road gradient may be determined in one of several ways.

The gradient may be a feature of the original map database of the firstdigital map in which case it may be copied directly from the databasei.e. for the given node.

There may be a standardized linear referenced resource that is anadjunct to the first digital map database. This linear referenceresource could be e.g. a GPS probe trace or some other product of amobile survey. In this case a spatial lookup or conflation may be usedto determine a relevant gradient value for the incoming and outgoingpaths from the location reference point.

In yet another alternative, a standardized Digital Terrain Map (DTM) maybe used. DTMs of different resolutions, although preferably less than 10m may be used. The DTM should take into account the built-up area withinand around the road bed. This could be based upon Light Detection AndRanging (LIDAR), Mobile Mapping Laser Point Clouds or various other DTMconstruction techniques. A raster look up may be used. In exemplarytechniques, to determine if a road bed is properly accounted for,several readings may be taken along the input roadway. If there arestark undulations in the DTM readings as determined by an inputparameter then gradient for the LRP may be omitted.

A validity distance is estimated for each of the directions into and outof the node in the first map represented by the LRP along the line. Byway of example, validity distances my range from 20 m to 100 m. Thevalidity distance will depend upon the nature of the location. Thevalidity distance should be chosen so as to reflect the variabilitybetween different paths i.e. lines at the node to enable them to bedistinguished from one another, rather than to accurately reproduce theterrain. Thus it is the relative gradient that is important.

FIG. 22 illustrates a scenario in which ABC and ABD represent potentialpaths flowing through a node B. The section BC contains a downwardgradient flowing away from B, while BD contains an upward gradientflowing away from BD. This illustrates the way in which gradient mayhelp to distinguish between otherwise similar paths.

Curvature

The curvature describes the radius of curvature flowing in and/or out ofthe LRP i.e. node along the corresponding line as a circular radius. Theradius may be expressed in degrees or radians or quantized values.

The line i.e. road curvature may be determined in one of several ways.

The curvature may be a feature of the original map database of the firstdigital map in which case it may be copied directly from the databasei.e. for the given node.

If the curvature is not stored in the map database, but the map databasemodel is determined to be of suitable geometric accuracy, such asAdvanced Driver Assistance System (ADAS) compliant, it may be possibleto compute the inflowing or outflowing curvature radius from the mapdata. It may be necessary to look ahead or back in order to extrapolate.

There may be a standardized linear reference resource that is an adjunctto the first map database, such as a GPS probe trace or some otherproduct of a mobile survey. In this case, a spatial look up orconflation can be used to determine a relevant curvature value forincoming and outgoing paths for the LRP.

A fit location is estimated to indicate where the hypothetical circledefining the radius of curvature contacts the line corresponding to thenode represented by the LRP. The units of the fit location express adistance along the line outward from the node. The validity distance,being the distance from the node to the fit location along the line,represents the distance along the line over which the curvature may beconsidered to be valid. As described with reference to validity distancefor the gradient above, the validity distance for curvature is intendedto be such that it will enable the curvature to be used to distinguishlines from one another, and so should represent the distance over whichthe curvature value is applicable to a level which will allow relativecurvature differences between lines to be identified, rather thanaccurately reflecting the terrain.

A direction of curvature is also stored.

FIG. 23 a-c illustrate the way in which a radius of curvature may bederived for a line BC emanating from the LRP/node B. The solid lines inFIG. 23 a represent the abstracted lines of a path ABC which isrepresented in an ordered list of LRPs in accordance with the invention.The dashed line of FIG. 23 b represents the actual driven path from B toC. The circle in FIG. 23 c indicates a fitted circle that approximatesthe curvature of the actual driven path BC.

The curvature is defined as the reciprocal of the radius of the fittedcircle i.e. 1/M. The value of 1/M is stored together with a validitydistance, being the distance from the node to the fit location X wherethe circle contacts the actual driven path between B and C.

Data Structure

Coordinates

A data model for a set of coordinates including ellipsoidal height isshown below.

Byte Latitude Longitude Ellipsoidal Height 2 Lower Upper Lower UpperLower Upper bound bound bound bound bound bound −36459 36460 36459 m36460 m −10000 m 10000 m m mGradient

It is assumed that a road gradient may be represented by a single bytepair for each of the directions of inflow and outflow to a node. Onevalue in the pair represents the validity distance, and the other thegradient in %. A positive gradient value indicates a rise in elevationand a negative value a drop in elevation. The orientations of the valueassume that one is facing outward from the node. The gradient values arescaled −20% to +20%.

Byte Valid Distance Inflow Gradient 1 Lower Upper Lower Upper boundbound bound bound 0 [null] 255 m −20% 20%

Byte Valid Distance Outflow Gradient 1 Lower Upper Lower Upper boundbound bound bound 0 [null] 255 m −20% 20%Curvature

It is assumed that the road curvature may be represented by a singlebyte pair for each of the directions of inflow and outflow to a node.There will be a pair of bytes for each direction. One value in the pairrepresents a fit location, in terms of meters along the line from thenode to the point at which the hypothetical circle touches the line. Theother value is a linear scaled value derived from 1/[radius M]. Anegative value of curvature represents a right curve and a positivevalue indicates a left curve. The orientations of the value assume weare facing outward from the node.

In the example, radius of curvature is computed (M). The reciprocal 1/Mis then derived, and it is assumed that the maximum absolute value of1/M is 0.02. The sign denoting direction of curvature is added and thevalues scaled between −100 and +100.

Byte Circle Fit Location Inflow Curvature 1 Lower Upper Lower Upperbound bound bound bound 0 [null] 255 m −100 100

Byte Circle Fit Location Outflow Curvature 1 Lower Upper Lower Upperbound bound bound bound 0 [null] 255 m −100 100

APPENDIX—A

Specification for Logical Data Format & Physical Data Format

The following table explains common terms and abbreviations used in thisdocument and in the context of location referencing:

TABLE A1 Explanation of common abbreviations Abbreviation Description AFAttribute Flag—a flag which indicates that the binary representation ofthe location reference includes attribute information ArF Area Flag—aflag which indicates that the location reference describes an area BEARBearing—angle between the direction to a point in the network and areference direction (here: the true North) COORD Coordinates—a pair oftwo values (longitude and latitude) representing a position in atwo-dimensional network DNP Distance to Next Point—the length in meterto the next location reference point (measured along the locationreference path between these two LRP) FOW Form Of Way—Certain aspects ofthe physical form that a line takes. It is based on a number of certainphysical and traffic properties. FRC Functional Road Class—Aclassification based on the importance of the role that the lineperforms in the connectivity of the total road network. latLatitude—geographic coordinate used for north-south measurement LFRCNPLowest Functional Road Class to Next Point lon Longitude—geographiccoordinate used for east-west measurement LRP Location Reference Point—apoint of the location which holds relevant information enabling amap-independent location reference; typically a collection ofinformation describing an object in the map; consists of a coordinateand additional information about a line in the map. NOFF NegativeOffset—distance in meter along the location reference path between thereal end of the location and the end of the location reference pathNOffF Negative Offset Flag—a flag which indicates that a negative offsetis included in the location reference POFF Positive Offset—distance inmeter along the location reference path between the start of thelocation reference path and the real start of the location POffFPositive Offset Flag—a flag which indicates that a negative offset isincluded in the location reference RFU Reserved for future use—a bit ina binary stream which does not have a use yet VER Version—Versioninformation1. Data Format

A location reference is a description of a designated part of a digitalmap or a sequence of geographical positions. For this description we usethe model of location reference points (LRPs, see 1.1.1).

A location reference for line locations contains at least two LRPs butthere is no maximum number of LRPs defined. The location reference pathis the path in the digital map described by the LRPs and can be found bya shortest-path calculation between each consecutive pair of LRPs.

1.1 Logical Data Format Specification

The logical data format describes the logical model for locationreferences according to the MapLoc™ standard.

1.1.1. Location Reference Point (LRP)

The basis of a location reference is a sequence of location referencepoints (LRPs). Such a LRP contains a coordinate pair, specified in WGS84longitude and latitude values and additionally several attributes.

The coordinate pair (see 1.1.3.1) represents a geographical positionwithin a map/network and is mandatory for a LRP. The coordinate pairbelongs to a “real” node within a network.

The attributes (see section 1.1.3.2 to 1.1.3.6) describe values of aline within a network at which the line is incident to the nodedescribed by the coordinate pair. In this context it is not defined ifthe attributes refer to an incoming or outgoing line regarding the node.This will be specified in section 1.2.

1.1.2. Topological Connection of LRPs

Referring to FIG. 12, The location reference points shall be stored in atopological order or “next point”-relationship of successive LRPs. Thelast point in this order will have no next point in this relationship.

FIG. 12 shows an example of this relationship. The LRPs are indicated byA1, B1 and C1 and the black lines and arrows indicate the order of thepoints from A1 to C1 in the location reference path. In this example theLRP A1 will have B1 as next point, B1 will have C1 as next point and C1will have no next point.

1.1.3. Components of LRPs

This section describes the components of a location reference point.

1.1.3.1 Coordinate Pair

Coordinate pair stands for a pair of WGS84 longitude (lon) and latitude(lat) values. This coordinate pair specifies a geometric point in adigital map. The Ion and lat values are stored in a decamicrodegreesresolution (10⁻⁵, or five decimal points).

Abbreviation: COORD Type: (float, float)

1.1.3.2 Functional Road Class

The functional road class (FRC) is a road classification based on theimportance of a road. The possible values of the FRC attribute are shownin Table A2. If there are more FRC values defined than these 8 locationreference values then a proper mapping needs to be done or lessimportant classes needs to be ignored.

TABLE A2 Logical format: Functional road class FRC FRC 0—Main road FRC1—First class road FRC 2—Second class road FRC 3—Third class road FRC4—Fourth class road FRC 5—Fifth class road FRC 6—Sixth class road FRC7—Other class roadAbbreviation: FRC Type: integer1.1.3.3 Form of Way

The form of way (FOW) describes the physical road type. The possiblevalues of the FOW attribute are shown in Table A3.

TABLE A3 Logical Format: Form of way FOW Description UNDEFINED Thephysical road type is unknown. MOTORWAY A Motorway is defined as a roadpermitted for motorized vehicles only in combination with a prescribedminimum speed. It has two or more physically separated carriageways andno single level-crossings. MULTIPLE_CARRIAGEWAY A multiple carriagewayis defined as a road with physically separated carriageways regardlessof the number of lanes. If a road is also a motorway, it should be codedas such and not as a multiple carriageway. SINGLE_CARRIAGEWAY All roadswithout separate carriageways are considered as roads with a singlecarriageway. ROUNDABOUT A Roundabout is a road which forms a ring onwhich traffic travelling in only one direction is allowed. TRAFFICSQUAREA Traffic Square is an open area (partly) enclosed by roads which isused for non- traffic purposes and which is not a Roundabout. SLIPROAD ASlip Road is a road especially designed to enter or leave a line. OTHERThe physical road type is known but does not fit into one of the othercategories.Abbreviation: FOW Type: integer1.1.3.4 Bearing

The bearing (BEAR) describes the angle between the true North and a linewhich is defined by the coordinate of the LRP and a coordinate which isBEARDIST along the line defined by the LRP attributes. If the linelength is less than BEARDIST then the opposite point of the line is used(regardless of BEARDIST). The bearing is measured in degrees and alwayspositive (measuring clockwise from North). The parameter BEARDIST isdefined in Table A4.

Abbreviation: BEAR Type: integer

TABLE A4 Logical format: Parameter BEARDIST Abbreviation DescriptionValue Unit BEARDIST distance between two coordinates 20 meters whichform a line for the calculation of the bearing value

FIG. 13 shows how the second point for the bearing calculation isdetermined. The figure shows a line from A2 to B2 which is longer thanBEARDIST. The shaded part of this line is exactly BEARDIST meters longso that the point marked with B′ is BEARDIST meters away from A2traversing along the line from A2 to B2. The straight line from A2 to B′is now considered for the calculation of the bearing value. Note, thisis different to the angle that would have been calculated if theopposite node of line (in this case, this would be B2) is used.

FIG. 14 shows two examples of the bearing value calculation. There aretwo lines, one from A3 to B3 and one from A3 to C3. For both lines thearcs indicate the angles to the North.

1.1.3.5 Distance to Next LRP

This DNP field describes the distance to the next LRP in the topologicalconnection of the LRPs. The distance is measured in meters and iscalculated along the location reference path. The last LRP will have thedistance value 0.

Abbreviation: DNP Type: integer

FIG. 15 shows an example of the distance calculation and assignment. Thethree LRPs are in a sequence from A4 over B4 to C4. Therefore thedistance between A4 and B4 along the location reference path will beassigned to A4. The LRP B4 will hold the distance between B4 and C4 andthe LRP C4 will have a distance value of 0.

1.1.3.6 Lowest FRC to Next LRP

The lowest FRC (LFRCNP) is the lowest FRC value which appears in thelocation reference path between two consecutive LRPs. The highest FRCvalue is 0 and the lowest possible FRC value is valued with 7.

Abbreviation: LFRCNP Type: integer

1.1.4. Offsets

Offsets are used to shorten the location reference path at its start andend. The new positions along the location reference path indicate thereal start and end of the location.

1.1.4.1 Positive Offset

The positive offset (POFF) is the difference of the start point of thelocation reference and the start point of the desired location along thelocation reference path. The value is measured in meters. FIG. 16 showsan example for the calculation of the positive and negative offset. Thelines are indicating the location reference path and the hatchingindicates the desired location.

Abbreviation: POFF Type: integer

1.1.4.2 Negative Offset

The negative offset (NOFF) is the difference of the end point of thedesired location and the end point of the location reference along thelocation reference path. The value is measured in meters. (see FIG. 16also).

Abbreviation: NOFF Type: integer

1.2 Relationship Attributes—LRP

All attributes are linked to a LRP. For all LRPs (except that last LRP)the attributes describe an outgoing line of the node at the LRPcoordinate. The attributes of the last LRP direct to an incoming of thenode at the LRP coordinate.

FIG. 17 shows an example for the relationship between a LRP and theattributes. The lines indicate the location reference path and the nodesA5, B5 and C5 are the LRPs. Note that there is also a line whose startand end node is not a LRP (the third line in the sequence). This linedoes not need to be referenced because it is covered by the shortestpath between the LRPs B5 and C5.

The LRPs A5 and B5 direct to an outgoing line and the last LRP C5directs to an incoming line.

1.3 Data Format Rules

These rules describe additional regulations for location referencesaccording to this specification. These rules are used to simplify theencoding and decoding process and to increase the accuracy of theresults.

-   Rule—1 The maximum distance between two location reference points    shall not exceed 15 km. The distance is measured along the location    reference path. If this condition is not fulfilled for a location    reference then a sufficient number of additional LRPs shall be    inserted.

The maximum distance between two consecutive location reference pointsis restricted in order to speed up shortest-path computation becauseseveral short routes can be computed quicker than one large route if therouting algorithm has to take the whole network into account. Therestriction also provides the opportunity to from a compact binaryformat with an acceptable accuracy.

-   Rule—2 All lengths are integer values. If there are float values    available then we will round these values to get an integer    representation.

Different maps might store the length values in different formats andalso with different precision and the uniform basis for all is the usageof integer values. It is also more compact to transmit integer values ina binary format than using float values.

-   Rule—3 Two LRPs are mandatory and the number of intermediate LRPs is    not limited.

A line location reference must always have at least two locationreference points indicating the start and the end of the location. Ifthe encoder detects critical situations where the decoder (on adifferent map) might get into trouble, the location reference might beenhanced with additional intermediate LRPs.

-   Rule—4 The coordinates of the LRPs shall be chosen on real network    nodes.

These real network nodes shall be junctions in the real world and it isexpected that these junctions can be found in different maps with ahigher probability than positions somewhere on a line. Additionallynodes shall be avoided which can be easily skipped during a routesearch. At these avoidable nodes it is not possible to deviate from aroute.

Nodes having only one incoming and one outgoing line shall be avoidedsince these nodes are not related to junctions (see FIG. 18) and can bestepped over during route search. Nodes which have two incoming and twooutgoing lines and there are only two adjacent nodes shall also beavoided (see FIG. 19).

If one of these nodes is selected for a LRP then this LRP should beshifted along the location reference path in order to find a suitablenode. This can be done since a route calculation will step over suchavoidable nodes without leaving the desired path.

If the start or the end of a location is placed on avoidable nodes thenthe encoder should expand the location uniquely and should find asuitable node outside of the location. This expansion must never go intothe location because this will shorten the location.

1.3.1. Overview of the Data Format Rules

The following Table summarizes the data format rules.

TABLE A5 Data format rules overview Rule Description Value Rule 1 maxdistance between 15000 m two consecutive LRPs Rule 2 road length valuestreated as integer values Rule 3 number of LRPs at least two LRPs Rule 4avoidable nodes LRPs shall be placed on real network nodes (also validfor start and end of a location)1.4 Binary Representation

The physical data format describes a byte-oriented stream format for thelogical data format specified above. It uses the components described inthe logical data format in section 1.1.

1.4.1. Data Types

The physical data format uses the following data types. Table gives anoverview of all available data types and specifies the name, the typeand the designated size of each data type. In the following sections thedata type names are used to indicate the size and type for each datacomponent.

TABLE A6 Physical format: Data types Data type name Type Size RangeBoolean flag with true = 1 1 bit  0-1 false = 0 uByte unsigned integer 1byte   0-255 uShort unsigned integer 2 bytes    0-65535 uSmallIntunsigned integer 3 bytes     0-16777215 uInteger unsigned integer 4bytes      0-4294967295 sByte signed integer 1 byte −128-27  sShortsigned integer 2 bytes −32768-32767 sSmallInt signed integer 3 bytes−8388608-8388607 sInteger signed integer 4 bytes −2147483648-2147483647String[n] array of n characters n bytes variable size BitField[n] arrayof n bits n bits variable size

Negative integer values are stored in the two's complement format.

1.4.2. Coordinates (COORD)

Each point in a map consists of a coordinate pair “longitude” (lon) and“latitude” (lat) represented in WGS84 coordinates. The directions northand east are represented by positive values (longitude and latituderespectively). The Ion and lat values are stored in a decamicrodegreesresolution (10⁻⁵, five decimals).

The coordinate values will be transmitted as integer values. Thesevalues will be generated using Equation E1 which calculates a 24-bitinteger representation. The resolution parameter is set to 24. Thistranslation leads to an error of about 2.4 meter at most. The backwardtranslation is described in Equation E2. Both equations make use of thesignum function which is −1 for negative values, 1 for positive valuesand 0 otherwise.

$\begin{matrix}{{{Transformation}\mspace{14mu}{from}\mspace{14mu}{decimal}\mspace{14mu}{coordinates}\mspace{14mu}{into}\mspace{14mu}{integer}\mspace{14mu}{values}}\mspace{20mu}{{int} = \left( {{{{sgn}\left( \deg \right)}*0.5} + \frac{\deg*2^{Resolution}}{360{^\circ}}} \right)}} & {{Equation}\mspace{14mu}{E1}} \\{{{Transformation}\mspace{14mu}{from}\mspace{14mu}{integer}\mspace{14mu}{values}\mspace{14mu}{into}\mspace{14mu}{decimal}\mspace{14mu}{coordinates}}\mspace{20mu}{\deg = \left( \frac{\left( {{int} - {{{sgn}({int})}*0.5}} \right)*360{^\circ}}{2^{Resolution}} \right)}} & {{Equation}\mspace{14mu}{E2}}\end{matrix}$

The physical format makes use of an absolute and a relative coordinateformat. The absolute format represents the designated values of thegeographical position and the relative value is the offset thecoordinates relative to the preceding coordinate.

1.4.2.1 Absolute Format

The absolute format describes geographical position in a 24-bitresolution. Table A7 shows the data type used for the absolute format.

TABLE A7 Physical format: Coordinate format (absolute) Data type ValueDescription sSmallInt −8388608-+8388607 24 bit representation1.4.2.2 Relative Format

The relative format is used to describe differences between twoconsecutive coordinates. The difference is calculated for each value(lon/lat) separately as shown in Equation E3. The current and previousvalues represent the latitude (longitude) value in degrees. Thedifference between these two values is multiplied with 100000 in orderto resolve an integer value.relative=round(100000*(currentPo int−previousPo int))  Equation E3:Relative Coordinates Calculation

Table A8 shows the maximum distances which are possible using a 16-bitrepresentation. The figures are calculated for a fixed coordinate atlon=5° and lat=52° (location in the Netherlands).

TABLE A8 Physical format: Longitude/Latitude ranges for relativecoordinates latitude longitude byte lower bound upper bound lower boundupper bound 2 −36459 m 36460 m −22504 m 22504 m

Table A9 shows the data type for 2 bytes offsets.

TABLE A9 Physical format: Coordinate format (relative) Data type ValueDescription sShort −32768-+32767 2 bytes relative coordinates1.4.3. Attribute Values

The binary format of the attributes will follow in this section.

1.4.3.1 Functional Road Class (FRC)

The functional road class (FRC) can hold eight different values asdescribed in the logical format. These eight values are represented by 3bits and the mapping is shown in Table A10.

TABLE A10 Physical format: Functional road class Value Value Data type(integer) (binary) Description BitField[3] 0 000 FRC 0—Main road 1 001FRC 1—First class road 2 010 FRC 2—Second class road 3 011 FRC 3—Thirdclass road 4 100 FRC 4—Fourth class road 5 101 FRC 5—Fifth class road 6110 FRC 6—Sixth class road 7 111 FRC 7—Other class road1.4.3.2 Form of Way (FOW)

The form of way (FOW) can hold eight different values as described inthe logical format. These eight values are represented by 3 bits and themapping is shown in TableA11.

TABLE A11 All Physical format: Form of way Value Value Data type(integer) (binary) Description BitField[3] 0 000 UNDEFINED 1 001MOTORWAY 2 010 MULTIPLE _CARRIAGEWAY 3 011 SINGLE_CARRIAGEWAY 4 100ROUNDABOUT 5 101 TRAFFICSQUARE 6 110 SLIPROAD 7 111 OTHER1.4.3.3 Bearing (BEAR)

The bearing describes the angle between the road and the true North asdescribed in the logical format. The physical data format defines 32sectors whereby each sector covers 11.25° of the circle. These 32sectors are represented by 5 bits. Table A12 shows the data type for thebearing attribute and Table A13 shows the mapping from the sectors tothe concrete value.

TABLE A12 Physical format: Bearing Data type Value DescriptionBitField[5] 0-31 number of the sector in which the angle between theNorth and the line specified in the logical data format is located; thefull circle is divided into 32 sectors each covering an angle of 11.25°.

TABLE A13 Physical format: Bearing value definition Value Sector 0000.00° <= x < 011.25° 1 011.25° <= x < 022.50° 2 022.50° <= x < 033.75°3 033.75° <= x < 045.00° 4 045.00° <= x < 056.25° 5 056.25° <= x <067.50° 6 067.50° <= x < 078.75° 7 078.75° <= x < 090.00° 8 090.00° <= x< 101.25° 9 101.25° <= x < 112.50° 10 112.50° <= x < 123.75° 11 123.75°<= x < 135.00° 12 135.00° <= x < 146.25° 13 146.25° <= x < 157.50° 14157.50° <= x < 168.75° 15 168.75° <= x < 180.00° 16 180.00° <= x <191.25° 17 191.25° <= x < 202.50° 18 202.50° <= x < 213.75° 19 213.75°<= x < 225.00° 20 225.00° <= x < 236.25° 21 236.25° <= x < 247.50° 22247.50° <= x < 258.75° 23 258.75° <= x < 270.00° 24 270.00° <= x <281.25° 25 281.25° <= x < 292.50° 26 292.50° <= x < 303.75° 27 303.75°<= x < 315.00° 28 315.00° <= x < 326.25° 29 326.25° <= x < 337.50° 30337.50° <= x < 348.75° 31 348.75° <= x < 360.00°

Equation E4 outlines the calculation of the bearing value and FIG. 20provides a graphical overview of the sectors.

$\begin{matrix}{{{Calculation}\mspace{14mu}{of}\mspace{14mu}{the}\mspace{14mu}{bearing}\mspace{14mu}{value}}{{{value} = \left\lfloor \frac{angle}{11.25{^\circ}} \right\rfloor},{{0{^\circ}} \leq {angle} < {360{^\circ}}}}} & {{Equation}\mspace{14mu}{E4}}\end{matrix}$1.4.3.4 Distance to Next LRP (DNP)

The DNP attribute measures the distance between two consecutive LRPsalong the location reference path as described in the logical format.

The physical data format defines an 8-bit representation and Table A14shows the data type used for DNP. This representation defines 255intervals and in combination with rule 1 of the data format rules(maximum length between two consecutive LRPs is limited by 15000 m) eachinterval will have a length of 58.6 meters.

TABLE A14 Physical format: Distance to next point Data type ValueDescription BitField[5] 0-255 distance interval according to Equation E5

Equation E5 shows how the DNP values can be calculated.

$\begin{matrix}{{{Calculation}\mspace{14mu}{of}\mspace{14mu}{the}\mspace{14mu}{DNP}\mspace{14mu}{value}}{{value} = \left\lfloor \frac{length}{58.6\mspace{14mu} m} \right\rfloor}} & {{Equation}\mspace{14mu}{E5}}\end{matrix}$1.4.3.5 Lowest FRC to Next Point (LFRCNP)

The lowest FRC to the next point indicates the lowest functional roadclass used in the location reference path to the next LRP. Thisinformation could be used to limit the number of road classes which needto be scanned during the decoding. See Table A15 for a definition of thedata type.

TABLE A15 Physical format: Lowest FRC to next point Data type ValueDescription BitField[3] 0-7 holds the same values as described in Table1.4.4. Location Reference Header

The Location Reference header contains general information about thereference.

1.4.4.1 Version (VER)

The version is used to distinguish between several physical and dataformats for location references. The version number is represented by 3bits and the data type is shown in Table A16.

TABLE A16 Physical format: Version Data type Value DescriptionBitField[3] 0-7 current version number1.4.4.2 Attribute Flag (AF)

The attribute flag indicates whether there are attributes appended toeach LRP or not. The AF value is 0 if no attributes are appended andtherefore the location reference only consists of coordinates. Otherwisea value of 1 indicates that attributes are appended to each LRP. Thedata type for the AF is shown in Tables A17 and A18.

TABLE A17 Physical format: Attribute flag Data type Value DescriptionBoolean 0, 1 flag, indicating whether attributes are appended to eachLRP or not

TABLE A18 Physical format: Attribute flag values Value Description 0 noattributes are appended 1 for each LRP a set of attributes is appended1.4.4.3 Area Flag (ArF)

The area flag indicates whether the location reference describes an areaor not. If this flag is set then the location shall be connected and wedescribe an area, as seen in Tables A19 and A20 below.

TABLE A19 Physical format: Area flag Data type Value Description Boolean0, 1 flag, indicating whether the location reference describes an areaor not

TABLE A20 Physical format: Area flag values Value Description 0 locationreference describes no area 1 location reference describes an area1.4.5. Offsets

Offsets are used to locate the start and end of a location more precisethan bound to the nodes in a network. The logical format defines twooffsets, one at the start of the location and one at the end of thelocation and both offsets operate along the lines of the location andare measured in meters. The offset values are not mandatory and amissing offset value means an offset of 0 meters. Offsets are also onlyvalid for line locations which have attributes included.

1.4.5.1 Offset Flags

Offset flags indicate whether the data includes a specific offsetinformation or not. The physical data format deals with two flagscorresponding to the two different offset values. The positive offsetflag (PoffF) and the negative offset flag (NoffF) are described inTables A21 and A22.

TABLE A21 Physical format: Offset flag Data type Value DescriptionBoolean 0, 1 flag, indicating whether the corresponding offset value isincluded in the data or not

TABLE A22 Physical format: Offset flag values Value Description 0location reference data does NOT include the corresponding offsetinformation 1 location reference data includes the corresponding offsetinformation1.4.5.2 Offset Values

The offset values (positive and negative, POFF and NOFF) indicate thedistance between the start (end) of the location reference path and the“real” start (end) of the location.

The physical data format defines an 8-bit representation for each offsetvalue. Table A23 shows the data type used for POFF and NOFF. Thisrepresentation allows us to define 256 intervals with a length of eachinterval of 58.6 meters. The interval number calculation for offsets isoutlined in Equation E6.

TABLE A23 Physical format: Offset Data type Value DescriptionBitField[5] 0-255 offset length interval according to Equation E6

$\begin{matrix}{{{Calculation}\mspace{14mu}{of}\mspace{14mu}{offset}\mspace{14mu}{values}}{{value} = \left\lfloor \frac{{offset}\mspace{14mu}{length}}{58.6\mspace{14mu} m} \right\rfloor}} & {{Equation}\mspace{14mu}{E6}}\end{matrix}$1.5 Physical Data Format Specification

This section describes the arrangement of the data fields in a bytestream. It is assumed that we have a byte-oriented stream and we can use8 bits per byte.

1.5.1. Overview

The main structure of the binary format is:

-   -   Header, First LRP, following LRPs, Last LRP, and offsets

The Header, the first LRP and the last LRP are mandatory and the numberof following LRPs is not limited. The Last LRP has its own structure dueto a different information level. Offsets are optional and the existencewill be indicated by flags in the attributes of the last LRP.

Table A24 gives an overview of the main structure. The stream can beread from the left to the right, so that the first received byte will bethe status byte. For each coordinate the first received value will bethe longitude value followed by the latitude value.

The calculation of message sizes depending on the number of LRPs can befound in section 1.6 below.

TABLE A24 Binary format overview Structure Header First LRP followingLRP . . . Name absolute absolute relative relative Status LongitudeLatitude attr. 1 attr. 2 attr. 3 Longitude Latitude attr. 1 attr. 2attr. 3 . . . # bytes 1 3 3 1 1 1 2 2 1 1 1 . . . description sectionsection section section section section section section section sectionsection . . . 1.5.2 1.5.3 1.5.3 1.5.5.1 1.5.5.2 1.5.5.3 1.5.4 1.5.41.5.5.1 1.5.5.2 1.5.5.3 Structure positive negative . . . last LRPoffset offset Name relative relative . . . Longitude Latitude attr. 1attr. 4 offset offset # bytes . . . 2 2 1 1 1 1 description . . .section section section section section section 1.5.3 1.5.3 1.5.5.11.5.5.4 1.5.6 1.5.61.5.2. Status Byte

The status byte is transmitted once for every location reference andcontains the area flag (ArF, section 1.4.4.3), attribute flag (AF,section 1.4.4.2) and the version information (VER, section 1.4.4.1). Thebits 7, 6 and 5 are reserved for future use (RFU) and shall be 0. TableA25 gives an overview of the usage of each bit in the status byte.

TABLE A25 Status byte Bit 7 6 5 4 3 2 1 0 used RFU RFU RFU Arf AF VERfor

In this particular version of the format, attributes are added to eachLRP and areas are not described. If the “current version” is 2, thestatus byte will have the value shown in Table A26:

TABLE A26 Status byte value Bit 7 6 5 4 3 2 1 0 value 0 0 0 0 1 0101.5.3. First LRP Coordinates

The coordinates of the first LRP are transmitted in an absolute format(see section 1.4.2.1) and therefore each value (Ion and lat) will use 3bytes. Table A27 shows the byte order for longitude and latitude values.

TABLE A27 First LRP coordinates Bit 23 22 21 20 19 18 17 16 15 14 13 1211 10 9 8 7 6 5 4 3 2 1 0 used highest byte middle byte lowest byte for

1.5.4. Following LRP Coordinates

The coordinates of the following LRPs and the last LRP are transmittedin a relative format (see section 1.4.2.2) and therefore each value (lonand lat) will use 2 bytes. Table A28 shows the byte order for longitudeand latitude values.

TABLE A28 Following LRPs coordinates Bit 15 14 13 12 11 10 9 8 7 6 5 4 32 1 0 used highest byte lowest byte for1.5.5. Attributes

Attributes are added to each LRP. There are 4 different types ofattributes depending on the position of a LRP in the location reference.

1.5.5.1 First Attribute Byte (Attr. 1)

The first attribute byte contains the attributes FRC (see section1.4.3.1) and FOW (see section 1.4.3.2) and two bits are reserved forfuture use. Table A29 shows the usage of each bit.

TABLE A29 First attribute byte - valid for all LRPs Bit 7 6 5 4 3 2 1 0used RFU RFU FRC FOW for1.5.5.2 Second Attribute Byte (Attr. 2)

The second attribute byte contains the attributes LFRCNP (see section1.4.3.5) and BEAR (see section 1.4.3.3). Table A30 shows the usage ofeach bit. This attribute is not valid for the last LRP since there is noLFRCNP information available.

TABLE A30 Second attribute byte - valid for all LRPs, except the lastLRP Bit 7 6 5 4 3 2 1 0 used LFRCNP BEAR for1.5.5.3 Third Attributes Byte (Attr. 3)

The third attribute byte contains the attribute DNP (see section 14.3.4)as shown in Table A31. This attribute is not valid for the last LRPsince there is no DNP information available.

TABLE A31 Third attribute byte - valid for all LRPs, except the last LRPBit 7 6 5 4 3 2 1 0 used DNP for1.5.5.4 Fourth Attribute Byte (Attr. 4)

The attribute 4 contains the BEAR information, the positive and negativeoffset flags (see section 1.4.5.1) and one bit is reserved for futureuse. This attribute is used for the last LRP, as shown in Table A32.

TABLE A32 Fourth attribute bytes - valid only for the last LRP Bit 7 6 54 3 2 1 0 used RFU POffF NOffF BEAR for1.5.6. Offset

The positive offset (POFF) and negative offset (NOFF) are only includedif the corresponding flags in attribute 4 indicate their existence.Absent offset values indicate an offset of 0 meters. The offset valuesare calculated according to section 1.4.5., and bit usage for theseoffsets is shown in Tables A33, A34.

TABLE A33 Positive offset value Bit 7 6 5 4 3 2 1 0 used POFF for

TABLE A34 Negative offset value Bit 7 6 5 4 3 2 1 0 used NOFF for1.6 Message Size Calculation

The message size of a location reference depends on the number of LRPsincluded in the location reference. There must be at least two LRPs inthe location reference. Also mandatory is the header with the statusinformation. The following calculation and Table A35 show message sizesdepending on the number of LRPs.

-   -   Header        -   1 byte status        -   Total: 1 byte    -   First LRP        -   6 bytes COORD (3 bytes each for lon/lat)        -   3 bytes Attributes        -   Total: 9 bytes    -   Following LRPs        -   4 bytes COORD (2 bytes each for lon/lat)        -   3 bytes Attributes        -   Total: 7 bytes    -   Last LRP        -   4 bytes COORD (2 bytes each for lon/lat)        -   2 bytes Attributes        -   Total: 6 bytes    -   Offset (if included)        -   1 byte positive offset (if included)        -   1 byte negative offset (if included)        -   Total: 0-2 bytes

TABLE A35 Message sizes depending on the number of LRPs # LRPs MessageSize 2 16 bytes (+1 or +2 bytes offset, if included) 3 23 bytes (+1 or+2 bytes offset, if included) 4 30 bytes (+1 or +2 bytes offset, ifincluded) 5 37 bytes (+1 or +2 bytes offset, if included) 6 44 bytes (+1or +2 bytes offset, if included) 7 51 bytes (+1 or +2 bytes offset, ifincluded) 8 58 bytes (+1 or +2 bytes offset, if included) . . . . . .n(n > 1) 1 + 9 + (n − 2)*7 + 6 bytes (+1 or +2 bytes offset, ifincluded)

A specific example of the manner in which the above formats are used isnow provided with reference to the location reference described abovewith reference to FIGS. 2, 3, 4 and 5 in which three location referencepoints (nodes {circle around (1)}, {circle around (10)} and {circlearound (15)} and lines {circle around (1)}-{circle around (3)}, {circlearound (10)}-{circle around (11)} and {circle around (14)}-{circlearound (15)}) are identified as precisely describing a location.

The location reference consists of three location reference points andTable A36 below shows the coordinates for the nodes {circle around (1)},{circle around (10)} and {circle around (15)}. These nodes are thecorresponding nodes to the location reference points. In preparation ofthe binary format this table also shows the relative coordinates. Thenode {circle around (1)} corresponds to the location reference point 1and will have coordinates in absolute format. Node {circle around (10)}corresponding to location reference point 2 will have relativecoordinates to the location reference point 1. Node {circle around (15)}corresponding to location reference point 2 will also have relativecoordinates but now referencing to location reference point 2.

TABLE A36 Example coordinates Node LRP Relative Relative ID indexLongitude Latitude longitude latitude {circle around (1)} 1 6.12683°49.60851° — — {circle around (10)} 2 6.12838° 49.60398° 155 −453 {circlearound (15)} 3 6.12817° 49.60305° −21  −93

The relative longitude and latitude are calculated according Equation E3above. The offsets being calculated in step 2 of the encoding processare shown in Table A37. In the binary data only the positive offset willappear because the negative offset is 0 and a missing offset will betreated as 0.

TABLE A37 Example offset values Field Value positive Offset 150 negativeOffset 0

Table A38 below collects the relevant data for each location referencepoint from the underlying digital map, and through calculation. Thisincludes the functional road class, the form of way and the bearing ofthe corresponding line. The needed information about the path betweentwo subsequent location reference points is also shown (lowestfunctional road class and distance to the next location referencepoint).

TABLE A38 Location reference points determined during encoding LRP indexFRC FOW BEAR LFRCNP DNP 1 FRC3 MULTIPLE_CAR- 135° FRC3 561 RIAGEWAY 2FRC3 SINGLE_CAR- 227° FRCS 274 RIAGEWAY 3 FRC5 SINGLE_CAR- 290° — —RIAGEWAY

The BEAR, LFRCNP and DNP attributes are determined as described above:

The following tables above hold all relevant information for creatingthe binary data. The following tables outline the binary data accordingto the Physical Data Format:

-   -   Status byte: see Table A39    -   LRP 1: see Table A40 to Table A44    -   LRP 2 see Table A45 to Table A49    -   LRP 3 see Table A50 to Table A53    -   Offset see Table A54

TABLE A39 Binary example: status byte Bit 7 6 5 4 3 2 1 0 DescriptionRFU RFU RFU ArF AF Version Value 0 0 0 0 1 0 1 0

TABLE A40 Binary example: LRP 1 - absolute longitude Byte First SecondThird Bit 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Value 0 0 0 00 1 0 0 0 1 0 1 1 0 1 1 0 1 0 1 1 0 1 1

TABLE A41 Binary example: LRP1 - absolute latitude Byte First SecondThird Bit 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Value 0 0 1 00 0 1 1 0 1 0 0 0 1 1 0 1 1 1 1 0 1 0 0

TABLE A42 Binary example: LRP1 - attribute 1 Bit 7 6 5 4 3 2 1 0Description RFU RFU FRC FOW Value 0 0 0 1 1 0 1 0

TABLE A43 Binary example: LRP1 - attribute 2 Bit 7 6 5 4 3 2 1 0Description LFRCNP Bearing Value 0 1 1 0 1 1 0 0

TABLE A44 Binary example: LRP1 - attribute 3 Bit 7 6 5 4 3 2 1 0Description DNP Value 0 0 0 0 1 0 0 1

TABLE A45 Binary example: LRP2 - relative longitude Byte First SecondBit 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Value 0 0 0 0 0 0 0 0 1 0 0 1 1 0 11

TABLE A46 Binary example: LRP2 - relative latitude Byte First Second Bit7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Value 1 1 1 1 1 1 1 0 0 0 1 1 1 0 1 1

TABLE A47 Binary example: LRP2 - attribute 1 Bit 7 6 5 4 3 2 1 0Description RFU RFU FRC FOW Value 0 0 0 1 1 0 1 1

TABLE A48 Binary example: LRP2 - attribute 2 Bit 7 6 5 4 3 2 1 0Description LFRCNP Bearing Value 1 0 1 1 0 1 0 0

TABLE A49 Binary example: LRP2 - attribute 3 Bit 7 6 5 4 3 2 1 0Description DNP Value 0 0 0 0 0 1 0 0

TABLE A50 Binary example: LRP3 - relative longitude Byte First SecondBit 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Value 1 1 1 1 1 1 1 1 1 1 1 0 1 0 11

TABLE A51 Binary example: LRP3 - relative latitude Byte First Second Bit7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Value 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1

TABLE A52 Binary example: LRP3 - attribute 1 Bit 7 6 5 4 3 2 1 0Description RFU RFU FRC FOW Value 0 0 1 0 1 0 1 1

TABLE A53 Binary example: LRP3 - attribute 4 Bit 7 6 5 4 3 2 1 0Description RFU PoffF NoffF Bearing Value 0 1 0 1 1 0 0 1

TABLE A54 Binary example: positive Offset Bit 7 6 5 4 3 2 1 0Description POFF Value 0 0 0 0 0 0 1 0

The full binary data stream will have a length of 24 bytes and consistsof the following (ordered as bytes from left to right and top to down):

00001010 00000100 01011011 01011011 00100011 01000110 11110100 0001101001101100 00001001 00000000 10011011 11111110 00111011 00011011 1011010000000100 11111111 11101011 11111111 10100011 00101011 01011001 00000010

The invention claimed is:
 1. A method of resolving a location from anordered list of location reference points, each location reference pointbeing representative of a node in a first digital map and each locationreference point being associated with information relating to theproperties of a specific line or segment in said first digital mapemanating from or incident at the node, the method comprising the stepsof: (i) for each location reference point, identifying at least onecandidate node existing in a second digital map, and identifying atleast one candidate line or segment existing in said second digital mapemanating from or incident at said candidate node; (ii) performing aroute search within said second digital map between: at least one of anidentified candidate node and a corresponding identified candidate lineor segment emanating therefrom or incident thereat, and at least one ofan identified candidate node for the next location reference pointappearing in the list and a corresponding identified candidate line orsegment emanating therefrom or incident thereat, and extracting fromsaid second digital map each line or segment forming part of the routeso determined between said candidate nodes; and (iii) repeating step(ii) for each consecutive pair of location reference points up to andincluding the final location reference point appearing in the list,wherein, when more than one candidate node and/or more than onecandidate line or segment in the second digital map is identified for agiven location reference point, the method further comprises a step ofidentifying a most likely candidate node and/or a most likely candidateline or segment, and using the most likely candidate node and/or mostlikely candidate line or segment in the route search, wherein elevationinformation is associated with each location reference point, theelevation information relating to the location reference point and/orthe specific line or segment emanating from or incident at the node inthe first digital map represented by the location reference point, theelevation information comprising gradient information and a distance ofvalidity for the gradient information along the candidate line orsegment, and using the elevation information in said step of identifyingthe most likely candidate node and/or most likely candidate line orsegment when more than one candidate node and/or candidate line orsegment is found in the second digital map to resolve the location inthe second digital map.
 2. The method of claim 1 wherein the elevationinformation is one or more of absolute elevation information or relativeelevation information.
 3. The method of claim 1, wherein the elevationinformation further comprises ellipsoidal height information.
 4. Themethod of 1, wherein each location reference point is associated withinformation defining the position of the location reference point, theposition information including longitudinal, latitudinal and elevationposition information.
 5. The method of claim 1 wherein the gradientinformation includes information regarding the degree of the gradientand the direction of the gradient.
 6. The method of claim 1, whereincurvature information is associated with each location reference point,the curvature information relating to the location reference pointand/or the specific line or segment emanating from or incident at thenode in the first digital map represented by the location referencepoint.
 7. The method of claim 6, wherein each location reference pointis associated with curvature and/or gradient information relating to thespecific line or segment emanating from or incident at the node in thefirst digital map represented by the location reference point, whereinthe curvature and/or gradient information is used to identify the mostlikely candidate line or segment for the location reference point whenmore than one candidate line or segment is identified for a givenlocation reference point.
 8. The method of claim 1, wherein eachlocation reference point is associated with elevation information forthe location reference point, wherein the elevation information is usedto identify the most likely candidate node for the location referencepoint when more than one candidate node is identified for a givenlocation reference point.
 9. The method of claim 1 further comprisingrating the identified candidate nodes and/or candidate lines or segmentsaccording to a likelihood that the identified candidate nodes and/orcandidate lines or segments correspond to the node in the first maprepresented by the location reference point or the specific line orsegment corresponding to the node in the first map.
 10. The method ofclaim 9 wherein the step of rating the candidate nodes is carried out byusing factors associated with elevation and the distance between thelocation reference point and the candidate node in the second map. 11.The method of claim 9 wherein the step of rating the candidate lines orsegments is carried out by using factors associated with curvature orgradient.
 12. The method of any of claims 9 further comprising rankingthe candidate nodes and/or lines or segments according to a likelihoodthat the candidate nodes and/or lines or segments correspond to the nodein the first map or the line or segment corresponding to the node in thefirst map represented by the location reference point.
 13. The method ofclaim 9 further comprising displaying the second digital map anddisplaying the resolved location on the second digital map.
 14. Anon-transitory computer program product comprising computer readableinstructions executable to perform a method according to any ofclaims
 1. 15. A navigation apparatus comprising: a memory, wherein thememory stores at least one digital map; a set of one or more processors,wherein the one or more processors are coupled to the memory storage,wherein the one or more processors are operative to: (i) for eachlocation reference point, identify at least one candidate node existingin a second digital map, and identifying at least one candidate line orsegment existing in said second digital map emanating from or incidentat said candidate node; (ii) perform a route search within said seconddigital map between: at least one of an identified candidate node and acorresponding identified candidate line or segment emanating therefromor incident thereat, and at least one of an identified candidate nodefor the next location reference point appearing in the list and acorresponding identified candidate line or segment emanating therefromor incident thereat, and extracting from said second digital map eachline or segment forming part of the route so determined between saidcandidate nodes; and (iii) repeat step (ii) for each consecutive pair oflocation reference points up to and including the final locationreference point appearing in the list, wherein, when more than onecandidate node and/or more than one candidate line or segment in thesecond digital map is identified for a given location reference point,the method further comprises a step of identifying a most likelycandidate node and/or a most likely candidate line or segment, and usingthe most likely candidate node and/or most likely candidate line orsegment in the route search, wherein elevation information is associatedwith each location reference point, the elevation information relatingto the location reference point and/or the specific line or segmentemanating from or incident at the node in the first digital maprepresented by the location reference point, the elevation informationcomprising gradient information and a distance of validity for thegradient information along the candidate line or segment, and using theelevation in said step of identifying the most likely candidate nodeand/or most likely candidate line or segment when more than onecandidate node and/or candidate line or segment is found in the seconddigital map.
 16. The method of claim 6 wherein the curvature informationincludes information regarding the degree of curvature of the line orsegment and the direction of curvature, and optionally a distance ofvalidity for the curvature information along the line or segment. 17.The navigation apparatus of claim 15, wherein the gradient informationcomprises a gradient value for incoming and outgoing paths associatedwith each location reference point.
 18. The navigation apparatus ofclaim 17, wherein a spatial lookup or conflation is used to determinethe grained value.
 19. The navigation apparatus of claim 15, wherein thegradient value is an average gradient value over the validity distance.